是否有可能,如果是这样,循环LINQ查询的结果?
像这样的东西:
var results= from a in dt.AsEnumerable()
where a.Field<int>("id") == i
select new
{
id= a.Field<int>("id"),
a= a.Field<double>("a"),
b = a.Field<double>("b")
};
IEnumerable<string> colNames = results.First().GetType().GetProperties()
.Select(p => p.Name);
string[] columns = colNames.ToArray();
int i = 0;
foreach (var row in results)
{
for (int i = 0; i < columns.Count(); i++)
{
string foobar = (string)row[columns[i]];
i++;
}
}
Run Code Online (Sandbox Code Playgroud)
基本上,我想复制以下类型的功能:
DataRow dr = new DataRow();
string foobar = dr[columns[i];
Run Code Online (Sandbox Code Playgroud)
在此先感谢所有人.
我不确定为什么这行不通,并希望在此方面有所帮助!是的,我已经看过这个
我试图在一个选择元素中设置多个选项,使用包含我想要选择的值的数组进行选择,并在数组和选择元素中的选项之间进行插入。请在下面找到代码:
// value is the array.
for (var j = 0; j < value.length; j++) {
for (var i = 0; i < el.length; i++) {
if (el[i].text == value[j]) {
el[i].selected = true;
alert("option should be selected");
}
}
}
Run Code Online (Sandbox Code Playgroud)
完成这些循环后,即使alert()触发,也不会选择任何内容。
任何想法都欢迎!
谢谢
厘米
PS(不确定代码格式化发生了什么)。
编辑:全功能
if (CheckVariableIsArray(value) == true) {
if (value.length > 1) { // Multiple selections are made, not just a sinle one.
var checkBoxEl = document.getElementById(cbxElement);
checkBoxEl.checked = "checked";
checkBoxEl.onchange(); // Call function …Run Code Online (Sandbox Code Playgroud) 我有2个列表,一个是文件名列表,第二个是文件名存根列表,我想从第一个列表中选择文件名就像文件名存根一样的所有内容.
List<string> files = new List<string>() {"a.txt", "b.txt", "c.txt"};
List<string> fileStub = new List<string>() {"a", "b", "c"};
Run Code Online (Sandbox Code Playgroud)
该查询将返回第一个列表中的所有记录.
提前致谢.
我正在规范化数据库,其中一部分涉及将列从一个表转换FLOAT为a DECIMAL(28,18).然后,当我尝试将此已转换的列连接回源列时,在某些情况下它不会返回任何结果.
它似乎与它转变的方式有关.例如, FLOAT转换为a DECIMAL(28,18)产生:
51.051643260000006000
Run Code Online (Sandbox Code Playgroud)
原来FLOAT是
51.05164326
Run Code Online (Sandbox Code Playgroud)
我尝试了各种修改方法FLOAT,但这些方法都没有:
CAST(51.05164326 AS DECIMAL(28,18)) = 51.051643260000000000
STR(51.05164326 , 28,18) = 51.0516432599999990
Run Code Online (Sandbox Code Playgroud)
转换的原因是由于提高了这些字段的准确性.
有没有人有一个一致的策略来转换这些数字,并能够确保后续的连接工作?
提前致谢
厘米
这个查询似乎并不高兴.任何人的想法?
var results = from a in previousQuery
join b in dtCounties.AsEnumerable()
on new { a.CountyCode, a.StateCode } equals new {
b.Field<string>("COUNTYCODE"),
b.Field<string>("StateCode")
}
where b.Field<bool>("TrueOrFalse") == true
select new
{
CountyCode = a.CountyCode,
TrueOrFalse= b.Field<bool>("TrueOrFalse"),
Sum= a.Sum
};
Run Code Online (Sandbox Code Playgroud)
我得到的错误是
"无效的匿名类型成员声明符.必须使用成员赋值,简单名称或成员访问声明匿名类型成员."
对于连接右侧的2列(即 b.Field<string>("COUNTYCODE")和b.Field<string>("StateCode")).
我使用Linq从4个级联下拉菜单中返回ID.
用户可能已从1个或所有菜单中选择了1个或多个值.从用户选择中,我然后查询DataTable的文本列以获取代表ID.
如果用户从第4(和最低级别)下拉菜单中进行选择,那么他们将从上述所有选项中进行选择.
如果用户从菜单1中选择"X",从菜单2中选择"Y",而在其他人中没有任何内容我希望看到results110行,其中"X"存在于[Col_1]中,然后将查询说明results2[Col_2]中存在"Y"的5行.
编辑 守则(基本形式)
var results1 =
from a in dt.AsEnumerable()
where stringArray1.Contains([Col1])
select a;
var results2 =
from a in results1
where stringArray2.Contains([Col2])
select a;
var results3 =
from a in results2
where stringArray3.Contains([Col3])
select a;
var results4 =
from a in results3
where stringArray4.Contains([Col4])
select a;
var results = results4 ?? results3 ?? results2 ?? results1;
Run Code Online (Sandbox Code Playgroud)
results4取决于来自results3,results3打开results2和results2打开的结果results1.
它可能results4 - 2 …
c# ×4
linq ×4
coalesce ×1
comparison ×1
datatable ×1
decimal ×1
javascript ×1
list ×1
multi-select ×1
options ×1
t-sql ×1