【发布时间】:2016-09-02 20:04:03
【问题描述】:
我正在尝试使用利用 TcpClient 的 C# 插件统一构建 UWP 应用程序。该插件使用 System.Net.Sockets。当我构建一个独立的可执行文件时,该应用程序可以在我的本地机器上完美运行。但是,当我尝试为 Universal 10 平台构建它时,它不起作用。这很重要,因为我的目标是在 Hololens 上部署应用程序。
我在控制台中收到错误 CS0246:
The type or namespace TcpClient could not be found (are you missing a using directive or an assembly reference?)
我遇到过在让 TcpClient 与 Unity 一起工作时遇到类似问题的人。我尝试按照此解决方案安装预发布 System.Net.Sockets 4.1 包:https://github.com/dotnet/corefx/issues/5939
我在 Visual Studio 中打开了 C# 项目,并成功安装了 4.1 版。但是,当我再次尝试构建时遇到了同样的错误。这是我的 packages.config 文件:
<?xml version="1.0" encoding="utf-8"?>
<packages>
<package id="System.IO" version="4.0.0" targetFramework="net461" />
<package id="System.Net.Primitives" version="4.0.10" targetFramework="net461" />
<package id="System.Net.Sockets" version="4.1.0-beta-23516" targetFramework="net461" />
<package id="System.Runtime" version="4.0.0" targetFramework="net461" />
<package id="System.Threading.Tasks" version="4.0.0" targetFramework="net461" />
</packages>
我也遇到过这个解决方案,它使用 Windows.Networking.Sockets 包中的 StreamSocket 代替: How to connect to Unity game server socket from UWP app via sockets?
我考虑过重写所有代码以使用 StreamSocket。但是,由于我没有编写原始代码,因此这将很困难且容易出错。
我正在处理的代码是 Brekel Pro Face 2 中包含的数据流脚本。我会从代码中发布一些 sn-ps,但我不确定 Brekel 是否可以接受。
有什么想法吗?
【问题讨论】:
标签: c# sockets unity3d uwp tcpclient