Xamarin.ios 在MonoTouch下构建System.Net代理DLL-避免“a”;“朋友访问”;冲突

Xamarin.ios 在MonoTouch下构建System.Net代理DLL-避免“a”;“朋友访问”;冲突,xamarin.ios,portable-class-library,Xamarin.ios,Portable Class Library,为了让Portable Library项目v2在MonoTouch中工作,我目前正在经历一些困难 其中之一是我正在为System.Net方法构建一个转发DLL(请参阅中的一些说明) 但是,我在实际生成具有正确名称的DLL时遇到了一些问题,因为如果我将其生成为System.Net,则在生成时会出现错误: 错误CS0281:已将好友访问权限授予System.Net, PublicKeyToken=7cec85d7bea7798e',但输出程序集的名称为 System.Net,版本=0.0.0.0,区

为了让Portable Library项目v2在MonoTouch中工作,我目前正在经历一些困难

其中之一是我正在为System.Net方法构建一个转发DLL(请参阅中的一些说明)

但是,我在实际生成具有正确名称的DLL时遇到了一些问题,因为如果我将其生成为
System.Net
,则在生成时会出现错误:

错误CS0281:已将好友访问权限授予
System.Net,
PublicKeyToken=7cec85d7bea7798e',但输出程序集的名称为
System.Net,版本=0.0.0.0,区域性=中性,PublicKeyToken=null'。 尝试添加对“System.Net”的引用, PublicKeyToken=7cec85d7bea7798e'或将输出程序集名称更改为 匹配它(CS0281)(System.Net.Touch)

我确实有办法解决这个问题——用不同的名称生成文件,然后手动重命名。但如果可以的话,我宁愿避免这一步


在生成名为System.Net的程序集时,是否有人能建议一种避免此错误的方法?

不确定这是否有帮助。我能够获取您的代码,并在Visual Studio 2010中构建一个延迟签名系统.Net,版本=2.0.5.0,区域性=中性,PublicKeyToken=7cec85d7bea7798e。然后成功地使用该DLL构建了一个简单的应用程序(一个PCL+一个MonoTouch),在VS/Windows和Xamarin/Mac中编译和运行。

经过数月的研究,似乎在解决方案中实现这一点的唯一方法是我已经有了的解决方法:

我确实有办法解决这个问题——用不同的名称生成文件,然后手动重命名。但如果可以的话,我宁愿避免这一步


希望这不会很快被需要-因为我们现在有官方的Xamarin PCL支持正在生产中。

谢谢-它确实有帮助-但我不能将其标记为答案,因为它不会在Xamarin Studio中编译DLL本身。我会用我所做的和一个“不可能”的答案来回答。@Stuart,不,我没想到你会接受这个答案,我正试图解决这个问题,我想我应该分享我的发现。也许我应该添加一条评论(而不是主动堆栈溢出)。话虽如此,目前(在Xamarin发布PCL支持之前),创建一个单独的github repo并制作一个二进制包怎么样?MvvmCross或任何其他希望在Monotouch开发中利用PCL的项目都可以使用二进制文件。