尝试修改EntityFramework_CodeFirst和EntityFramework_CodeFirst2项目时出现此错误:
打开连接 [U2] [UCINET-UO] [U2] [UCINET-UO] WIN32 API错误:10053已建立的连接被主机中的软件中止[火箭U2] [UCINET - UNIRPC] [ErrorCode = 81009] RPC失败套接字发送和dataLength:36
出错内部异常:无法将数据写入传输连接:已建立的连接已被主机中的软件中止。内部异常:WIN32 API错误:10053已建立的连接被主机中的软件中止[火箭U2] [UCINET - UNIRPC] [ErrorCode = 81009] RPC失败 套接字发送和dataLength:36
出错
我已将连接字符串设置为:
<add name="CustomerContext" connectionString="Database=dbPath;UserID=userId;Password=password;Server=serverIp;Pooling=false;ServerType=universe;ConnectTimeout=500;PersistSecurityInfo=true" providerName="U2.Data.Client" />
使用相同的凭据,我可以在ADO.NET和UniObjects连接上使用U2 DB Provider for .NET测试连接程序成功连接。我无法让它为EntityFramework_CodeFirst项目工作。
UNIRPC正在主机上运行。 31438端口正在侦听。防火墙已关闭。
修改 我已经设置了环境变量UCINETTRACE和UCINETTRACESWITCH,并且有一个DataAdapter Sample的跟踪日志。这是有趣部分的片段。 Full trace here
5/30/2012 10:56:53 AM:ThreadID:ThreadID:11线程名称:光标#1 - UciStatement :: OpenServerCursor()和SQL String :: call * HS.OLEDBINFO('ACCTS',' ','','','','1','',0,1) 5/30/2012 10:56:53 AM:ThreadID:退出:ThreadID:11线程名称:UciStatement :: OpenServerCursor() 5/30/2012 10:56:53 AM:ThreadID:输入:ThreadID:11线程名称:UciStatement :: AssociateServerCursor() 5/30/2012 10:56:53 AM:ThreadID:退出:ThreadID:11线程名称:UciStatement :: AssociateServerCursor() 5/30/2012 10:56:53 AM:ThreadID:输入:ThreadID:11线程名称:UciStatement :: (()ServerExecute 5/30/2012 10:56:53 AM:ThreadID:输入:ThreadID:11线程名称:UciStatement :: ServerExecuteSql() 5/30/2012 10:56:53 AM:ThreadID:ThreadID:11线程名称:[U2] [UCINET] [UNIVERSE]:错误:无法从@TMP中执行选择
编辑2: 我有HS.SALES示例工作,我在UniVerse 11.4(当前)。我采访了火箭支持,我不知道我需要使用HS.ADMIN授权单个UV帐户,这可能是问题所在。我认为与数据库的紧密联系会削减它,特别是因为HS.SALES正在运行。我仍然需要“SQLize”我的DICT文件,以允许它们在ADO.NET(&amp; EF)上工作,但我现在几乎拥有它。
答案 0 :(得分:0)
您是否尝试使用相同连接字符串的DataAdapter示例?这管用吗? 你能提供TRACE LOG吗?您需要设置以下内容:
跟踪和调试 要调试用于.NET应用程序的U2数据库提供程序,可以使用U2跟踪工具。要激活跟踪工具,请设置以下环境变量:
SET UCINETTRACE = c:\ temp
SET UCINETTRACESWITCH = 4
答案 1 :(得分:0)
可以试试U2NETDK v1.2.0吗?我希望它能解决上述问题。
U2NETDK v1.2.0 BETA包含Visual Studio 2010的U2数据库加载项。现在您可以使用VS2010 Server Explorer填充U2表,视图和子例程。
它允许您创建DataSet和实体数据模型。