나는 다음과 같은 간단한 데이터 모델이 : 나는 Usage
개체에 UsageTypeId
, ResourceTypeId
및 Percentage
값을 변경 한 다음 SubmitChanges()
LINQ - 투 - SQL 실행하면LINQ - 투 - SQL 업데이트가 제대로 작동하지
Resource
{
ResourceId
ResourceName
}
UsageType
{
UsageTypeId
UsageTypeName
}
Usage
{
UsageId
UsageTypeId
ResourceTypeId
Percentage
}
을 Percentage
값을 변경하는 SQL 문만 발급합니다 (SQL 프로파일 러를 통해 모니터링 됨).
코드를 단계별로 수행하면 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
http://www.codeproject.com/Messages/2918828/LINQ-to-SQL-bug-when-updating-foreign-key-fields.aspx 도움이되기를 바랍니다. – Raja