为啥 ASP.NET 试图为 Web 服务引用生成一个临时类?
Posted
技术标签:
【中文标题】为啥 ASP.NET 试图为 Web 服务引用生成一个临时类?【英文标题】:Why is ASP.NET trying to generate a temporary class for a Web Service reference?为什么 ASP.NET 试图为 Web 服务引用生成一个临时类? 【发布时间】:2011-03-25 22:46:49 【问题描述】:在 Visual Studio 2008 中,我有一个类库项目(称为 Media),我向其中添加了一个 Web 引用(不是服务引用)到第三方 Web 服务 (wsdl)。在类库项目中,为使用该服务创建了一个代理类,并为该服务中使用的类型创建了几个类。
我还有第二个类库(称为 Sync)引用第一个。然后我有一个引用第二个类库的网站项目。所有这些都是 .NET 3.5
So Web Site > Class Library (Sync) > Class Library with web service reference (Media)
我想进入生成的代码,所以我在 IIS 7.5 中启动网站并触发对第二个类库 (Sync) 中的方法的调用,该方法又应该调用网络服务代理。我完全期待着达到断点,但却得到了一个异常:
无法生成临时类 (结果=1)。错误 CS0029:不能 隐式转换类型 Media.WebService.multiValuedAttribute 到 Media.WebService.multiValuedAttribute[]
为什么 ASP.NET 试图生成一个临时类?我不是已经从第一个类库 (Media) 中生成了类吗?它试图生成什么样的类?
谢谢!
【问题讨论】:
【参考方案1】:您有一个生成的类,允许您调用 Web 服务。 ASP.NET 正在自动生成一个临时类来将 XML 序列化/反序列化为。
【讨论】:
谢谢!根据您的信息,我在 MSDN 上找到了这篇解释整个过程的文章:msdn.microsoft.com/en-us/library/aa302290.aspx以上是关于为啥 ASP.NET 试图为 Web 服务引用生成一个临时类?的主要内容,如果未能解决你的问题,请参考以下文章
从 Web 服务 (asmx) 页面引用 asp.net 页面上的字段
从另一个项目/dll 引用的 Asp.NET 用户控件具有 NULL 属性
ASP.Net Core 2.0 - 引用“Microsoft.NET.Sdk.Web”且“PreserveCompilationContext”属性未设置为 false