顯示具有 C# 標籤的文章。 顯示所有文章
顯示具有 C# 標籤的文章。 顯示所有文章

2013年3月5日 星期二

無法將 Lambda 運算式 轉換為型別 'string',因為它不是委派型別

From Evernote:

無法將 Lambda 運算式 轉換為型別 'string',因為它不是委派型別

今天遇到了一個奇怪的錯誤



覺的真的很奇怪,怎麼會無法下 db.Object.Include(c => c.Unit);

出現了這個錯誤。

解決的方法是加上
using System.Data.Entity;

加上這行就解決了。

讀取Json檔案到Object

From Evernote:

讀取Json檔案到Object

需要using的Path
using System. IO ;
using System. Xml ;
using System. Xml .Linq ;
using System. Runtime .Serialization . Json;


Test.json:
{"First":true,"AddDrop":false,"Abandon":false}

主要的程式碼:
string path = "../Test.json";
byte [] buffer = System . IO. File .ReadAllBytes (path);
using ( XmlReader reader = JsonReaderWriterFactory .CreateJsonReader ( buffer, XmlDictionaryReaderQuotas . Max))
{
     using ( XmlDictionaryReader xml = XmlDictionaryReader. CreateDictionaryReader ( reader))
     {
          DataContractJsonSerializer serializer = new DataContractJsonSerializer ( typeof( CourseSelectJsonModel ));     //重點在這行
          CourseSelectJsonModel courseSelectJsonModel =  serializer .ReadObject ( xml);
     }
}


Model:
public class CourseSelectJsonModel
{
     public bool First { get ; set ; }
     public bool AddDrop { get ; set ; }
     public bool Abandon { get ; set ; }
}