我是linq to xml的新手并尝试执行以下操作.我正在从我收到的一些对象创建一个新的xml.
我有一个名为"Scale"的XElement有一个Bool值"DynamicScale",如果它是False,我需要创建两个XElements作为后代Scale,如果是True,我不需要这些元素.
<Scale DynamicScale="False">
<LowScale>0</LowScale>
<HighScale>10000</HighScale>
</Scale>
Run Code Online (Sandbox Code Playgroud)
有没有办法If在创建它的过程中添加一个语句?或者任何其他建议来处理这种需求?如果我想做的话(我知道不可能这样).欢迎任何简单的方式.
new XElement("Scale",
new XAttribute("DynamicScale", c.DynamicScale),
if (c.DynamicScale == false)
{
new XElement("LowScale", c.LowScale),
new XElement("HighScale", c.HighScale),
})
Run Code Online (Sandbox Code Playgroud) 在下面需要你的帮助.
我有代码,我正在检查数据表中是否存在特定行; 如果row不存在,那么我将该行添加到datatable.这工作正常,但是当行值包含特殊字符链接'(单引号)时失败.
以下是代码:
string lastName = dgRow.Cells[2].Text.Replace("amp;", "");
DataRow[] dr = dt.Select("LastName='" + lastName + "'"); //check whether row is available in datatable or not
if (dr.Length <= 0)// Condition to check if row is there in data table
{
dt.Rows.Add();
dt.Rows[dt.Rows.Count - 1]["FirstName"] = dgRow.Cells[1].Text;
dt.Rows[dt.Rows.Count - 1]["LastName"] = dgRow.Cells[2].Text;
dt.AcceptChanges();
}
return dt; //Return modified data table to calling function.
Run Code Online (Sandbox Code Playgroud)
当LastName包含单引号时,此代码失败.
我需要一个解决方案,我不会从姓氏中删除引号.
谢谢
使用Entity Framework 4.3和Linq,我想将搜索字符串与包含对象的某些属性以及子对象的属性进行匹配.事实证明这是一个相当复杂的查询,我不知道该怎么做.例如,一个属性是一个整数,我不允许在Linq查询中调用.ToString().
为了让您了解我正在尝试做什么,请考虑以下示例代码:
var dbVersions = from ver in db.Versions
where ver.Name.Contains(search) ||
ver.Children.Any(c=>c.Id.ToString().Contains(search))
select ver;
Run Code Online (Sandbox Code Playgroud)
我该如何实施此搜索?也许通过存储过程?
数据库服务器是SQL Server 2012.