привет, извините за мой английский, я говорю по-французски
Я работаю над проектом asp.net mvc, использующим eloquera в качестве базы данных.
Я столкнулся с проблемой автоматического сопоставления uid объекта.
uidсгенерированная базой данных не сопоставлена с соответствующим полем объекта.
пожалуйста, кто-то может сказать мне, что не так с моим кодом
класс Program {
static void Main(string[] args)
{
var dbname = "testElo";
DB db = new DB("server=localhost;password=pwd;options=none;");
db.DeleteDatabase(dbname, true);
db.CreateDatabase(dbname);
db.OpenDatabase(dbname);
var p = new Person()
{
Nom = "giscard"
};
var uid = db.Store(p);
db.Close();
db.OpenDatabase(dbname);
db.RefreshMode = ObjectRefreshMode.AlwaysReturnUpdatedValues;
var tmp = (from Person per in db select per).ToList().SingleOrDefault();
Console.WriteLine("expected uid {0}", uid);
Console.WriteLine("object uid using PersonId field {0}", tmp.PersonId);
Console.WriteLine("object uid using db.GetUid {0}", db.GetUid(tmp));
Console.WriteLine("press enter to finish");
Console.ReadLine();
}
class Person
{
[ID]
public int PersonId;
public string Nom;
}
вот выход
ожидаемый uid 282574488338433
идентификатор объекта с использованием поля PersonId 0
идентификатор объекта с использованием db.GetUid 282574488338433
нажмите клавишу ввода, чтобы завершить