0
,我有以下簡單的數據模型:LINQ到SQL更新不能正常工作
Resource
{
ResourceId
ResourceName
}
UsageType
{
UsageTypeId
UsageTypeName
}
Usage
{
UsageId
UsageTypeId
ResourceTypeId
Percentage
}
當我更改Usage
對象的UsageTypeId
,ResourceTypeId
和Percentage
值,然後發出SubmitChanges()
LINQ到SQL僅發出SQL語句來更改Percentage
值(通過SQL Profiler進行監視)。
如果我單步執行代碼,我會看到使用正確值爲UsageTypeId
和ResourceTypeId
設置的屬性,但它們從未將其設置到數據庫。屬性保持正確的值,直到調用SubmitChanges()
。
我如下更改:
Usage usage = {get the Usage object from the datacontext};
usage.ResourceId = newValue1;
usage.UsageTypeId = newValue2;
usage.Percentage = newValue3;
什麼是真的很煩人的是,如果我調用該方法從測試夾具是否能夠正常工作並更新數據庫,而是從其他地方只是沒有調用時外鍵列被更新。
詹姆斯:-)
只讀設置爲false,而其他屬性會被更新。當您逐步完成代碼時,ResourceID和TypeID的屬性將被設置並執行相關的設計器代碼。 – m0gb0y74 2010-02-09 08:17:34
看看這個鏈接: http://www.codeproject.com/Messages/2918828/LINQ-to-SQL-bug-when-updating-foreign-key-fields.aspx 希望這會有所幫助。 – Raja 2010-02-09 12:31:06