使用最新版本的VS 2017 I
发生了ScriptHost错误[06.03.2018 20.46.05]异常时 执行功能:Function1。 FunctionApp2:无法加载文件或 assembly' Microsoft.WindowsAzure.Storage,Version = 8.6.0.0, Culture = neutral,PublicKeyToken = 31bf3856ad364e35'。找不到或 加载特定文件。 (来自HRESULT的异常:0x80131621)。 System.Private.CoreLib:无法加载文件或程序集 ' Microsoft.WindowsAzure.Storage,Version = 8.6.0.0,Culture = neutral, 公钥= 31bf3856ad364e35'
示例代码:
[FunctionName("Function1")]
public static void Run([TimerTrigger("0 */5 * * * *", RunOnStartup = true)]TimerInfo myTimer, TraceWriter log)
{
log.Info($"C# Timer trigger function executed at: {DateTime.Now}");
var storageAccount = CloudStorageAccount.Parse("[someConnectionString]");
var tbc = storageAccount.CreateCloudBlobClient();
}
我该如何解决这个问题?
答案 0 :(得分:1)
无法加载文件或程序集'Microsoft.WindowsAzure.Storage
根据您的错误消息,您似乎错过了 Microsoft.WindowsAzure.Storage 程序集或程序包版本冲突。您可以检查是否使用了相同的不同版本的包。检查Microsoft.NET.Sdk.Functions 1.0.8的依赖关系的兼容性。或者尝试卸载然后重新安装Microsoft.NET.Sdk.Functions包。
我按照您的步骤在Visual Studio中从管理Nuget包安装 Microsoft.NET.Sdk.Functions 1.0.8。然后我直接运行TimeTrigger。一切正常。我可以在依赖项中看到Microsoft.WindowsAzure.Storage包。
您可以检查Azure功能文件夹中的 project.assets 文件。
运行结果:
此外,这个article有一些类似的问题,你可以参考。