我在使用linq代碼執行成功執行表中提交更改時遇到問題,它不保存表中的更改。Linq db.submitchanges()不起作用
有人說你的表必須有主鍵提交更改,但我的表有主鍵。
有些人說使用集成安全=真實的,但它產生的異常無效關鍵字集成安全
這裏是我的連接字符串
<add name="POSConnectionString" connectionString="Persist Security Info=False; Data Source=|DataDirectory|\App_Data\POS.sdf; mode=Read Write;"
providerName="Microsoft.SqlServerCe.Client.4.0" />
代碼中插入表
public bool InsertItem(Item item)
{
try
{
using (SqlCeConnection conn = new SqlCeConnection(connectionString))
{
using (POSContext db = new POSContext(conn))
{
db.Items.InsertOnSubmit(item);
db.SubmitChanges();
return true;
}
}
}
catch (Exception ex)
{
return false;
}
}
數據這裏是我的桌面腳本
CREATE TABLE [Item] (
[ItemID] int IDENTITY (1,1) NOT NULL
, [ItemName] nvarchar(100) NOT NULL
, [ItemCode] nvarchar(100) NOT NULL
, [Weight] int NOT NULL
, [IsActive] bit NOT NULL
, [Stock] int NULL
, [UnitID] int NULL
);
GO
ALTER TABLE [Item] ADD CONSTRAINT [PK_Item] PRIMARY KEY ([ItemID]);
GO
我在窗口工作形成應用開發 數據庫的SQL Server Compact 4.0數據庫 的Visual Studio 2012
您務必檢查正確的數據庫? –
我該死的。我從表中得到的值完美只插入導致問題,並且只有一個數據庫在我的項目中,因爲我正在使用sql compact數據庫 –
查看您的bin/debug文件夾中的數據庫文件副本 – ErikEJ