私は既存のデータベースを持っていて、私のテーブルプライマリキー "useridPK"の使用に問題があります。 私はuseridPKのエイリアスとしてデフォルトの "ID"を使用したいと思います。問題のカスタムプライマリキー名
私のモデルは次のように設定されている:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Data.Linq.Mapping;
using System.Data.Linq;
using System.Data.Entity;
using System.Diagnostics;
namespace myPROJECT.Models
{
[Table(Name="AskUsers")]
public class AskUser
{
[Column(Name="useridPK",IsPrimaryKey=true,IsDbGenerated=true)]
public Int32 ID { get; private set; }
[Column]
public int roleidFK { get; set; }
[Column]
public string username { get; set; }
[Column]
public string password { get; set; }
[Column]
public DateTime datecreated { get; set; }
[Column]
public string firstname { get; set; }
[Column]
public string lastname { get; set; }
}
public class myPROJECT_DBContext : DbContext
{
public DbSet<AskUser> AskUsers { get; set; }
}
}
それはエラーを与える:
Exception Details: System.Data.SqlClient.SqlException: Invalid column name 'ID'.
私のコントローラコード:
public ActionResult Stuff()
{
var uu = from x in db.AskUsers
select x;
return View(uu.ToList());
}
この部分ならば、私は本当にわからないんだけど:
[Column(Name="useridPK",IsPrimaryKey=true,IsDbGenerated=true)]
はMVC3で非推奨ですか?この記事によると
どうもありがとう :)
DbContextはLinq-To-SqlではなくEF-CTP4です。 http://stackoverflow.com/questions/3471455/is-dbcontext-the-same-as-datacontext –