EFをLINQとで使用するプロジェクトを作成しますModel first
。そのため、edmxに基づいて、データベースとクラスを作成しました。
だから私はいくつかの問題を抱えました。クリックして、コードが機能しているかどうかをテストしました。
protected void btnSearch_Click(object sender, EventArgs e)
{
ZUser Zusr = new ZUser();
List<ZUser> lst = Zusr.ListAll();
// Zusr.Id = 1;
string test = "";
foreach (ZUser item in lst)
{
test = item.Name;
}
lblName.Text = test;
}
したがって、私のZUser
クラス(コントローラー)では、次のコードを実行しました。
[Serializable]
public class ZUser : User
{
String connString = ConfigurationManager.ConnectionStrings["ConnectionString"].ToString();
public List<ZUser> ListAll()
{
List<ZUser> lstUser = new List<ZUser>();
using (DataContext db = new DataContext(connString))
{
Table<User> Users = db.GetTable<User>();
var query =
from usr in Users
where usr.Name == "Test"
select usr;
foreach (ZUser usr in query)
lstUser.Add(usr);
}
return lstUser;
}
}
そして私のモデル(私のedmxによって生成されたクラス)
namespace System.Model
{
//[Table]
public partial class User
{
public int Codigo { get; set; }
public string Name { get; set; }
public string LastName { get; set; }
public string Password { get; set; }
public DateTime Created { get; set; }
public DateTime LastLogin { get; set; }
}
}
問題
[Table]
Modelクラスにを入れないと(追加しました)、このエラーが発生しました。これが正しい修正方法かどうかはわかりません。
タイプ'{0}'はテーブルとしてマップされていません。
- 上から問題を「修正」した後。私は私のでこの新しいものを手に入れました
foreach (ZUser usr in query)
。
メンバー'{0}。{1}'には、SQLへの変換がサポートされていません。
これを修正または回避する方法がわかりません。