0
下面是代碼第一,我將描述什麼,我試圖找出它下面:如何獲得自動增量列MVVM的下一個值
視圖模型
private ServiceReference1.tblUser user;
public ServiceReference1.tblUser User
{
get
{
return user;
}
set
{
user = value;
OnPropertyChanged("User");
}
}
public ICommand _addUser;
public ICommand addUser
{
get
{
if (_addUser == null)
{
_addUser = new DelegateCommand(delegate()
{
try
{
Service1Client wcf = new Service1Client();
wcf.AddUser(User);
Users.Add(User);
wcf.Close();
}
catch
{
Trace.WriteLine("working...", "MyApp");
}
});
}
return _addUser;
}
}
WCF
bool IService1.AddUser(tblUser user)
{
try
{
context = new HotelBaseEntities();
context.AddTotblUsers(user);
context.SaveChanges();
return true;
}
catch (Exception e)
{
e.Message.ToString();
return false;
}
}
說明: 在WCF服務上,我有ADO.Net EntityDataModel(EF 4),它包含表「tblUsers」。 「tblUsers」具有名爲「UserID」的主鍵列並且是自動增量。 WCF上的方法用於向「tblUsers」添加新記錄。我通過發送屬性「用戶」到WCF來做到這一點。此字段(「UserID」)爲0.是否有可能以某種方式在添加新記錄時立即獲取autoincrement列的下一個值?我的意思是這個0值可以通過自動增量列的下一個值改變嗎?我的數據庫在SQL Server Management Studio中創建2005
編輯
我有增加新的用戶數據庫的形式。它具有綁定到屬性User的文本框。這個文本框用於插入新用戶的名稱,用戶名和密碼。我在「tblUsers」中有這個列。所以當我用這個值填充文本框,並點擊按鈕,屬性用戶獲取這些記錄。但UserID爲0,因爲我沒有插入的文本框。
不,我已經打開它。問題是當我添加新記錄時UserID爲0,因爲它不在數據庫中。所以它被添加到數據庫後得到價值。但是我想管理它在添加之前獲得價值。 – Stojdza