我有一个看起来像这样的对象:
class Model
{
public string Category {get;set;}
public string Description {get;set;}
}
Run Code Online (Sandbox Code Playgroud)
目前我正在使用Linq获取这些对象的完整列表,然后手动设置字典,如下所示:
List<Model> models = //get list from repository and then with linq order them by category and description
Dictionary<string, List<Model>> dict= new Dictionary<string, List<Model>>();
foreach (var m in models) {
if (dict.ContainsKey(m.Category))
{
dict[m.Category].Add(m);
}
else
{
dict.Add(m.Category, new List<Model> { m });
}
}
Run Code Online (Sandbox Code Playgroud)
这样我就可以使用键访问某个类别的所有模型.
有没有办法用LINQ查询直接生成字典?
谢谢!
我有一个域,我有2个可搜索的字段(文字和文本字段),基本上是类别和内容.
如何指定要在字段中使用的特定字段?据我所知,它将默认搜索所有可搜索的字段,但这不是我想要的(即,不想查找类别Cats并从另一个类别获取结果只是因为它包含单词Cat in the内容.)
我正在使用.Net SDK,我一直在阅读他们的文档,但找不到该部分.
谢谢!
我目前正在解析存储在数据库中的一些C#脚本,提取代码中某些方法的主体,然后编写一个显示id的XML文件,提取方法的主体等.
我现在写的问题是,当我在XML中编写代码时,我必须将其写为文字字符串,所以我认为我需要"在开头和结尾添加:
new XElement("MethodName", @"""" + Extractor.GetMethodBody(rule.RuleScript, "MethodName") + @"""")
Run Code Online (Sandbox Code Playgroud)
这有效,但我有一个问题,在DB中写的东西
for (int n = 1; n < 10; n++)
Run Code Online (Sandbox Code Playgroud)
被写入XML文件(或打印到控制台):
for (int n = 1; n < 10; n++)
Run Code Online (Sandbox Code Playgroud)
如何让它打印实际字符而不是代码?数据库中的代码是用实际的字符编写的,而不是<像"安全" 一样.