本文整理汇总了C#中SessionNoServer.UpdateClass方法的典型用法代码示例。如果您正苦于以下问题:C# SessionNoServer.UpdateClass方法的具体用法?C# SessionNoServer.UpdateClass怎么用?C# SessionNoServer.UpdateClass使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类SessionNoServer
的用法示例。
在下文中一共展示了SessionNoServer.UpdateClass方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: Main
static readonly string s_systemDir = "UpdateClass"; // appended to SessionBase.BaseDatabasePath
static int Main(string[] args)
{
try
{
UpdatedClass updatedClassObject;
int ct1 = 0;
using (SessionNoServer session = new SessionNoServer(s_systemDir))
{
session.BeginUpdate();
session.UpdateClass(typeof(UpdatedClass)); // call this when you have updated the class since first storing instances of this type or since last call to UpdateClass
UInt32 dbNum = session.DatabaseNumberOf(typeof(UpdatedClass));
foreach (UpdatedClass obj in session.AllObjects<UpdatedClass>())
{
Console.Write(obj.ToString() + " has members: ");
foreach (DataMember member in obj.GetDataMembers())
{
Console.Write(member.ToString() + " ");
}
Console.WriteLine();
obj.UpdateTypeVersion(); // comment out if you DO NOT want to migrate this object to the latest version of the class
ct1++;
}
int ct2 = 0;
Database db = session.OpenDatabase(dbNum, true, false);
if (db != null)
foreach (UpdatedClass obj in db.AllObjects<UpdatedClass>())
ct2++;
Debug.Assert(ct1 == ct2);
updatedClassObject = new UpdatedClass();
session.Persist(updatedClassObject);
session.Commit();
}
}
catch (Exception ex)
{
Console.WriteLine(ex.ToString());
return 1;
}
return 0;
}