您好任何人都可以告诉我,如何使用ASP.NET连接Navision。 这是我在Web.Config中设置的连接字符串
<connectionStrings>
<add name="Navision" connectionString="dsn=TEST;uid=user1;pwd=paswd;database=Test;CompanyName=HHT Test;" />
</connectionStrings>
但是当我尝试连接时,我收到了这个错误:
System.Data.Odbc.OdbcException: ERROR [S1000] [Simba][SimbaEngine ODBC Driver]
[DRM File Library] The operating system returned the error (183):Cannot create
a file when that file already exists.
Error: 183
ERROR [IM006] [Microsoft][ODBC Driver Manager] Driver's SQLSetConnectAttr failed
ERROR [01S00] [Simba][SimbaEngine ODBC Driver]Invalid connection string attribute.
ERROR [01000] [Microsoft][ODBC Driver Manager] The driver doesn't support the
version of ODBC behavior that the application requested (see SQLSetEnvAttr).
at System.Data.Odbc.OdbcConnection.HandleError(OdbcHandle hrHandle, RetCode retcode)
at System.Data.Odbc.OdbcConnectionHandle..ctor(OdbcConnection connection,
OdbcConnectionString constr, OdbcEnvironmentHandle environmentHandle)
at System.Data.Odbc.OdbcConnectionOpen..ctor(OdbcConnection outerConnection,
OdbcConnectionString connectionOptions)
at System.Data.Odbc.OdbcConnectionFactory.CreateConnection(DbConnectionOptions options,
Object poolGroupProviderInfo, DbConnectionPool pool, DbConnection owningObject)
at System.Data.ProviderBase.DbConnectionFactory.CreateNonPooledConnection(DbConnection owningConnection,
DbConnectionPoolGroup poolGroup)
at System.Data.ProviderBase.DbConnectionFactory.GetConnection(DbConnection owningConnection)
at System.Data.ProviderBase.DbConnectionClosed.OpenConnection(DbConnection outerConnection,
DbConnectionFactory connectionFactory)
at System.Data.Odbc.OdbcConnection.Open()
at Service.Getdataset(String SqlStr)
我正在使用 Navision 4.0 SP3 和相同的ODBC驱动程序。
答案 0 :(得分:1)
ERROR [01S00] [Simba][SimbaEngine ODBC Driver]Invalid connection string attribute.
prob意味着您无法在连接字符串中使用CompanyName
。 ODBC驱动程序根本不知道Navision中的公司意味着什么(没有一个驱动程序知道tbh;))。
如果您确定要使用ODBC访问Nav,则必须手动处理与不同公司的交互。
还有一件事。你现在的方式,你只连接到SQL Server,而不是Nav(它是不同的东西)。因此,如果这是你的目标,那么使用System.Data.SqlClient。
如果要使用其所有业务逻辑等连接到Nav,则需要使用其他集成选项。如文件交换,tcp监听器,MSMQ等。不是说网络服务。
答案 1 :(得分:-1)
问题在于公司名称。 在我看来当然。当我通过REST连接导航到Windows Phone应用程序时,我一直在使用Odata,以下是公司名称的示例:
“http://addres/OData/Company( 'CRONUS%20%C3%86%C3%98%C3%85%20Company')/”