Unity,Dll上的WebServices,与.Net 4.0兼容

时间:2018-06-28 14:04:38

标签: c# .net web-services unity3d dll

我正在尝试统一使用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吗? 有人在某个地方见过这些问题吗?

2 个答案:

答案 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。