我第一次使用實體框架(代碼優先)。我用下面的代碼創建了一個上下文類。實體框架數據庫連接錯誤
public class ContactContext : DbContext
{
public ContactContext()
: base("DBConnectionString")
{
Database.SetInitializer<ContactContext>(new DropCreateDatabaseIfModelChanges<ContactContext>());
}
public DbSet<Contact> Contacts { get; set; }
}
Web.config文件:
<add name="ContactMgrDBContext" connectionString="Data Source=(Local);Initial Catalog=ContactsDB;Integrated Security=SSPI;" providerName="System.Data.SqlClient"/>
控制器類:
public class ContactController : Controller
{
ContactContext db = new ContactContext();
// // GET:/聯繫人/
public JsonResult ContactList(int? selectedContact)
{
IQueryable<Contact> contacts = db.Contacts;
//contacts.ToList()
var contactsJson = JsonConvert.SerializeObject(contacts.ToList());
return Json(contactsJson, JsonRequestBehavior.AllowGet);
}
當我以調試模式運行應用程序時,在此語句中出現以下異常。
var contactsJson = JsonConvert.SerializeObject(contacts.ToList());
型「System.Data.ProviderIncompatibleException」的異常出現在EntityFramework.dll但在用戶代碼中沒有處理 附加信息:在獲取從數據庫提供信息時出錯。這可能是由實體框架使用不正確的連接字符串造成的。檢查內部異常以獲取詳細信息,並確保連接字符串正確。
聯繫類代碼:
public class Contact
{
[Key]
public int ContactId { get; set; }
[Required, MaxLength(100)]
public string FirstName { get; set; }
[Required, MaxLength(100)]
public string LastName { get; set; }
public string EMail { get; set; }
public string Phone { get; set; }
public string BusinessName { get; set; }
}
我正在關閉此問題,因爲數據庫連接的原始問題已得到解決。我現在面臨着將數據(json格式)轉換爲jqGrid的問題。我將爲此創建一個單獨的問題。感謝大家的幫助! –
這裏是鏈接到我的其他問題有關的數據沒有得到由jqGrid呈現。即使數據是由JSON格式的操作方法返回的。 http://stackoverflow.com/q/30159205/1490250 –