MemberChangeConflict Class
Represents a situation in which an attempted update fails because member values have been updated since the client last read them.
Assembly: System.Data.Linq (in System.Data.Linq.dll)
| Name | Description | |
|---|---|---|
![]() | CurrentValue | Gets the current value of the member in conflict. |
![]() | DatabaseValue | Gets the database value of the member in conflict. |
![]() | IsModified | Gets a value that indicates whether the member data has been changed since the last database read or refresh. |
![]() | IsResolved | Gets a value that indicates whether the conflict has been resolved. |
![]() | Member | Gets metadata information about the member in conflict. |
![]() | OriginalValue | Gets the original value of the member in conflict. |
| Name | Description | |
|---|---|---|
![]() | Equals(Object) | Determines whether the specified object is equal to the current object.(Inherited from Object.) |
![]() | GetHashCode() | Serves as the default hash function. (Inherited from Object.) |
![]() | GetType() | |
![]() | Resolve(Object) | Specifies the value to set as the current value for the member in conflict. |
![]() | Resolve(RefreshMode) | Uses a RefreshMode parameter to automatically specify the value to set as the current value for the member in conflict. |
![]() | ToString() | Returns a string that represents the current object.(Inherited from Object.) |
The following example shows how to retrieve information about members in conflict.
// Add 'using System.Reflection' for this section. Northwnd db = new Northwnd("..."); try { db.SubmitChanges(ConflictMode.ContinueOnConflict); } catch (ChangeConflictException e) { Console.WriteLine("Optimistic concurrency error."); Console.WriteLine(e.Message); foreach (ObjectChangeConflict occ in db.ChangeConflicts) { MetaTable metatable = db.Mapping.GetTable(occ.Object.GetType()); Customer entityInConflict = (Customer)occ.Object; Console.WriteLine("Table name: {0}", metatable.TableName); Console.Write("Customer ID: "); Console.WriteLine(entityInConflict.CustomerID); foreach (MemberChangeConflict mcc in occ.MemberConflicts) { object currVal = mcc.CurrentValue; object origVal = mcc.OriginalValue; object databaseVal = mcc.DatabaseValue; MemberInfo mi = mcc.Member; Console.WriteLine("Member: {0}", mi.Name); Console.WriteLine("current value: {0}", currVal); Console.WriteLine("original value: {0}", origVal); Console.WriteLine("database value: {0}", databaseVal); Console.ReadLine(); } } }
Available since 3.5
Windows Phone Silverlight
Available since 7.1
Any public static ( Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.
.jpeg?cs-save-lang=1&cs-lang=csharp)
.jpeg?cs-save-lang=1&cs-lang=csharp)