[英]cannot use dynamic type with asp.net vnext core
我需要在ASP.NETt vNext應用程序中讀取並保存JSON文件,我想使用dynamic
變量來存儲使用JSON.net加載的值,但是當我去編譯時收到此錯誤消息:
ASP.NET Core 5.0錯誤CS1980:無法定義使用
'dynamic'
的類或成員,因為無法找到編譯器所需類型'System.Runtime.CompilerServices.DynamicAttribute'
。 你錯過了參考嗎?
怎么解決這個? 如果我使用dynamic
,我可以使用ASP.NET核心運行應用程序嗎?
您需要為aspnetcore50框架包含Microsoft.CSharp和System.Dynamic.Runtime軟件包。
對於CoreCLR版本1.0.0-beta1,這似乎對我有用:
using Newtonsoft.Json.Linq;
using System;
namespace DynamicTest
{
public class Program
{
public void Main(string[] args)
{
dynamic dobject = JObject.Parse("{number:1000, str:'string', array: [1,2,3,4,5,6]}");
Console.WriteLine(dobject.number);
Console.WriteLine(dobject.str);
Console.WriteLine(dobject.array.Count);
Console.ReadLine();
}
}
}
project.json
{
"version": "1.0.0-*",
"dependencies": {
"Newtonsoft.Json" : "6.0.7"
},
"commands": {
"run" : "run"
},
"frameworks" : {
"aspnet50" : { },
"aspnetcore50" : {
"dependencies": {
"System.Console": "4.0.0-beta-22231",
"System.Dynamic.Runtime": "4.0.0-beta-22231",
"Microsoft.CSharp": "4.0.0-beta-22231"
}
}
}
}
我正在解決這個問題,以及一個更有用的錯誤消息......
命名空間“System.Data”中不存在類型或命名空間名稱“Linq”
但是,我在我的IIS服務器(2012 R2 - IIS 8)上遇到了問題。 我讀到的關於這些問題的大多數帖子都是在處理他們的開發環境,而不是他們的Web服務器。
為了解決這兩個問題,我不得不將System.Core.dll從服務器框架文件夾(%windows path%\\ Microsoft.Net \\ Framework \\ v4.0.30319)復制到我的web應用程序bin文件夾中。
我不清楚為什么這是必要的,但我花了3天閱讀文檔和論壇帖子,沒有任何工作。 我們很幸運...
也許這會幫助其他正在掙扎的人。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.