我正在尝试统一使用Web服务。 我使用svcutil生成了一个代理类,但是该代理类使用的是“ System.Threading.Tasks”。
我注意到System.Threading.Tasks在.Net 3.5上不可用。 因此,我进入了播放器设置,并更改了to .Net 4.x
但是现在我还有另一个问题,我找不到解决方法,我需要使用System.Web.dll和System.Web.Services.dll来使我的Web服务正常工作,但是,包含在Program Files \ Unity \ Editor \ Data \ Mono \ lib \ mono \ 2.0 are all targets for .Net 3.5.
中所以这意味着我不能在.Net 4.x上使用它们
我一直在寻找安静的地方,却找不到任何答案。 如果需要,我可以在这里将代码添加到代理类中,但是我认为这没有用。我应该在某个地方下载那些dll吗? 有人在某个地方见过这些问题吗?
答案 0 :(得分:2)
您使用了错误的dll版本。
将Api Compatibility Level
更改为Net 4.x后,必须将System.Web.dll
的{{1}}和System.Web.Services.dll
文件复制到<UnityInstallationDirectory>\Editor\Data\MonoBleedingEdge\lib\mono\4.5
路径。 / p>
就是这样。重新启动Visual Studio和Unity。
答案 1 :(得分:0)
还有另一种链接丢失的库的方法,如this unity documentation中所述。
创建一个名为 csc.rsp 的文件,并将以下两行放入其中:
-r:System.Web.dll
-r:System.Web.Services.dll
是的,您最好将兼容性级别设置为.NET 4.x 在某些情况下,您可能还想重新启动Unity或VS。