我有一个包含 ID(int),Name(String),Salary(decimal) 的列表。列表中已经填充了 90 行。我想验证除整数值之外没有的所有 ID,例如薪水和姓名. LINQ可以吗?我正在使用带有 VS2012 的框架 4.5 任何快速解决方案。
问问题
503 次
2 回答
1
我想你想要这样的东西
class MyClass
{
int ID;
string Name;
decimal Salary;
}
...
bool IsValid(MyClass myInstance)
{
int nameInt;
return ((myInstance.Salary % 1) == 0) && // check salary
int.TryParse(myInstance.Name, out nameInt); // check name
}
...
// verify that all items in list are valid
List<MyClass> myList = ...
bool listValid = myList.All(IsValid)
于 2013-03-17T07:14:25.440 回答
0
我假设你想在这里查看薪水
.Where( x = > x.Salary.Equals( (int) x.Salary)
有点脏,我们将其转换为 int (丢失小数位,然后查看它是否与之前的值相同。
或者
.Where(x => x.Salary.Equals(Math.Round(x.Salary,0))
或者只是使用 Int32.TryParse - 不知道为什么要使用 linq 执行此操作。
于 2013-03-17T07:13:48.183 回答