在引用Web服务时构建发行版本时出错

时间:2011-04-26 14:53:08

标签: xamarin.android

如果我创建一个New Mono Android应用程序,然后将解决方案的Active Config更改为Release,然后右键单击并选择build,应用程序构建正常。

如果我按照http://soatest.parasoft.com/calculator.wsdl添加对this tutorial的网络引用,那么如果我再次构建,则会收到错误:

  

错误1无法加载文件或程序集'mscorlib,Version = 2.0.5.0,Culture = neutral,PublicKeyToken = 7cec85d7bea7798e'或其依赖项之一。强名称验证失败。 (HRESULT异常:0x8013141A)
  C:\ Users \ Administrator \ Documents \ Visual Studio 2010 \ Projects \ MonoAndroidApplication3 \ MonoAndroidApplication3 \ SGEN

如果我将Active配置更改回Debug然后构建,那么解决方案构建正常。 但是,在引用任何Web服务时,我根本无法构建Release配置。这导致我的问题,因为我无法部署我的应用程序的发布版本。

我尝试过使用VS2010和MonoDevelop 2.6 Beta 2,都会出现同样的错误。

2 个答案:

答案 0 :(得分:5)

我无法弄清楚为什么会这样,但你可以通过转到项目属性的Build选项卡并关闭“Generate serialization assembly”来解决它。

答案 1 :(得分:1)

生成序列化程序集阻止您构建。

我在选择Release目标时得到了NameResolutionFailure,因为我没有在应用程序的选项中设置INTERNET权限:

  1. 右键单击您的项目
  2. 选择选项
  3. 选择左侧项目“Mono for Android Application”
  4. 通过选中旁边的复选标记设置所需权限:“INTERNET”。
  5. 它似乎对调试版本有效,因为它用于将调试器连接到应用程序。

    您必须在Release版本配置中自行设置。