我正在 azure 函数中运行以下插入
代码到 azure sql server 2014 数据库中:
private static void Command(SqlConnection sqlConnection, string query)
{
var sqlCommand = new SqlCommand(query, sqlConnection);
try
{
sqlConnection.Open();
sqlCommand.ExecuteNonQuery();
}
finally
{
sqlConnection?.Close();
}
}
并出现以下异常:
System.Data.SqlClient is not supported on this platform
以下是它使用的依赖链:
如何从我的应用程序运行简单的 sql 命令?我做错了什么?
最佳答案
如果不需要最新稳定版本 4.6.0
,只需恢复为 4.5.1
会起作用的。
否则,解决方法是自行加载程序集。右键单击 Function 项目并 Edit <FunctionAppName>.csproj
,添加以下项目以将相关程序集复制到输出目录。
<!-- For publish -->
<ItemGroup>
<None Include="$(USERPROFILE)\.nuget\packages\system.data.sqlclient\4.6.0\runtimes\win\lib\netcoreapp2.1\System.Data.SqlClient.dll">
<CopyToOutputDirectory>Always</CopyToOutputDirectory>
</None>
</ItemGroup>
<!-- For local debug -->
<Target Name="CopyToBin" BeforeTargets="Build">
<Copy SourceFiles="$(USERPROFILE)\.nuget\packages\system.data.sqlclient\4.6.0\runtimes\win\lib\netcoreapp2.1\System.Data.SqlClient.dll" DestinationFolder="$(OutputPath)\bin" />
</Target>
有一个 issue跟踪此程序集引用问题。
关于c# - Azure Function - 此平台不支持 System.Data.SqlClient,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53952409/