我在Azure上运行了一个网站。我从SQL Server数据库表中提取数据,该数据库具有“Geography”类型的列。这会导致“DataReader.GetFieldType(...)返回null
的错误网络上的消息来源说我必须包含我已添加到web.config的Microsoft.SqlServer.Types.dll和bin文件夹,但仍然会出现错误。我错过了什么?
代码:
SqlConnection Connection = NewConnection();
SqlDataAdapter da = new SqlDataAdapter(SQL, Connection);
DataTable dt = new DataTable();
da.Fill(dt);
答案 0 :(得分:3)
我们遇到过Microsoft.SqlServerTypes的许多问题,我们采取的措施之一是将其添加到web.config或app.config文件中,以确保正确定位dll版本
<dependentAssembly>
<assemblyIdentity name="Microsoft.SqlServer.Types" publicKeyToken="89845dcd8080cc91" culture="neutral" />
<bindingRedirect oldVersion="10.0.0.0" newVersion="11.0.0.0" />
</dependentAssembly>
答案 1 :(得分:0)
您可以引用Microsoft.SqlServer.Types并设置&#34; Copy Local&#34;在其属性中。应该有所帮助。