之前在C#裡面序列化直接引入命名空間後使用JavaScriptSerializer jss = new JavaScriptSerializer();就可以用, 而net core裡面不這樣用了,我們來看一看怎麼使用。 1、序列化與反序列化。 2、開發中與C#的不同點。 序列化與反序列化: 同樣的, ...
之前在C#裡面序列化直接引入命名空間後使用JavaScriptSerializer jss = new JavaScriptSerializer();就可以用,
而net core裡面不這樣用了,我們來看一看怎麼使用。
1、序列化與反序列化。
2、開發中與C#的不同點。
序列化與反序列化:
同樣的,在Nuget 入Newtonsoft.Json,如下圖引用:
使用方式如下:
//將實體類序列化為JSON
var jso n= Newtonsoft.Json.JsonConvert.SerializeObject(data);
//反序列化JSON
T Model = Newtonsoft.Json.JsonConvert.DeserializeObject<T>(json);
開發中與C#的不同點:
1、後臺接收前臺的值;
C# 後臺接收:
- 在方法的括弧裡面直接接收;
- 使用Request[“指定名稱”];
- 使用獲取body的方式
net core 後臺接收:
- 在方法的括弧裡面直接接收;
- 使用Request.Form[“指定名稱”];
- 使用獲取body的方式
2、文件沒有放在wwwroot文件下麵
C#讀寫:
- 任意位置都可以
net core讀寫
- 寫:任意位置都可以
- 度:比如圖片文件沒在wwwroot文件下麵就不能讀取,如果非要讀取,必須在Startup.cs進行依賴註入,如下,原來的東西不要動,在Configure方法下麵的app.UseStaticFiles();下麵添加如下代碼
//設置訪問文件 app.UseStaticFiles(new StaticFileOptions { //配置除了預設的wwwroot文件中的靜態文件以外的文件夾 提供 Web 根目錄外的文件 經過此配置以後,就可以訪問upload文件下的文件 FileProvider = new PhysicalFileProvider( Path.Combine(Directory.GetCurrentDirectory(), "upload")), //upload文件名可以任意替換 RequestPath = "/upload", });
3、獲取文件路徑
C#獲取文件路徑:
- System.Web.HttpContext.Current.Server.MapPath(applicationPath)
net core獲取文件路徑
- 通過註入IHostingEnvironment服務對象來取得Web根目錄物理路徑
還有更多的坑需要填,這裡就不一一列舉了,感興趣的小伙伴可以在下麵評論出你踩到的坑,我們一起來填一填。