加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

C#如何构建强大的数据类型?

发布时间:2020-12-16 01:34:52 所属栏目:百科 来源:网络整理
导读:我希望你们中的一些人可以帮助我解决这个问题…. 我有一个类库,其中包含1个复杂的类.此类库用于解决方案中的其他2个项目. 1 =控制台应用程序,2 = Web服务应用程序(网站应用程序). 在控制台应用程序中,我创建了一个asmx Web服务引用,它将我的复杂类作为方法调
我希望你们中的一些人可以帮助我解决这个问题….

我有一个类库,其中包含1个复杂的类.此类库用于解决方案中的其他2个项目. 1 =控制台应用程序,2 = Web服务应用程序(网站应用程序).

在控制台应用程序中,我创建了一个asmx Web服务引用,它将我的复杂类作为方法调用中的1参数传递.

该类的类型为:ScheduleSummaryTransport

在控制台应用程序中执行工作的函数是期望绑定自类库DLL的对象,而不是Web服务引用.但是,Web服务调用期望来自Web服务引用的类型为…的参数.

那么我怎么能投

ClassLibrary.ScheduleSummaryTransport – > WebService.ScheduleSummaryTransport?

我试过了:

wsReporting.SendReportSummary( (Reporting.ScheduleSummaryTransport) scheduleSummary);

但是在visual studio中它检测到了一个设计时间错误:无法投射表达…..

请协助,谢谢

更新

为了完整性更多代码:

/// <summary>
        /// Sends the schedule report via email.
        /// </summary>
        /// <param name="scheduleSummary">
        /// The schedule summary.
        /// </param>
        private static void SendScheduleReport(ScheduleSummaryTransport scheduleSummary)
        {
            if (!Convert.ToBoolean(ConfigurationManager.AppSettings["EmailSummary"]))
            {
                return;
            }

            Trace.WriteLine(string.Empty);
            Trace.WriteLine("Sending summary by email... please wait ");

            Reporting.Reporting wsReporting = new Reporting.Reporting { Timeout = -1 };
            wsReporting.SendReportSummary( (Reporting.ScheduleSummaryTransport) scheduleSummary);
            Trace.WriteLine("Done...");
        }

解决方法

WebService代理生成器(wsdl.exe)为您生成一个类,用于保存有关通过Web服务传输的对象的所有信息.
这个新类与客户端中引用的类冲突.

你需要摆脱自动生成的类.为此,请在解决方案资源管理器中显示所有文件(顶部的图标).将有一个类Reference.cs作为Webservice Reference的子代,您可以在其中找到自动生成的代码.在那里添加一个使用ClassLibrary并删除有关重复类的所有代码.

为我工作. =)

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读