我想说这是有效的,现在却没有.我不知道会发生什么变化.
var inquiry = repo.GetByInstanceId(2);
foreach (var s in inquiry.Prop)
{
s.Prop = "Test 1 2 3...";
}
Assert.AreEqual(true, inquiry.S.Single().IsDirty, "S Should Be Dirty");
Run Code Online (Sandbox Code Playgroud)
发生的事情是在Property对象得到更新之前,一切都将是盛大的.现在,属性正在foreach循环中更新,但在foreach循环之后,它就像我没有做任何事情.
--EDIT--好吧,我认为IsDirty会让所有人失望.我想把确切的代码,减去一些名称更改.但IsDirty在这里并不重要.
我正在做的基本表现是:
class test { public int check { get; set; } }
var x = new List<test>();
x.Add(new test(){ check = 1});
foreach (var y in x)
{
y.check = 5;
}
Run Code Online (Sandbox Code Playgroud)
问题是"这不应该起作用吗?" 我认为应该,如果不是为什么?我有这个工作,我不知道我改变了什么.我可以告诉你我的对象,但我必须修改这些名字,这将是毫无意义的.IsDirty不是问题.我正在改变的值在循环内改变,但在循环外没有改变.
| 归档时间: |
|
| 查看次数: |
6670 次 |
| 最近记录: |