C#如何构建强大的数据类型?
我希望你们中的一些人可以帮助我解决这个问题….
我有一个类库,其中包含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并删除有关重复类的所有代码. 为我工作. =) (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |