小编Nib*_*Pig的帖子

使用System.Json遍历JSON

我正在探索.NET 4.5 System.Json库的功能,但是没有太多文档,而且由于流行的JSON.NET库,搜索起来非常棘手。

我基本上想知道,例如,如何遍历一些JSON:

{ "People": { "Simon" : { Age: 25 }, "Steve" : { Age: 15 } } }

我的字符串中包含JSON,我想遍历并显示每个人的年龄。

所以首先我要做:

var jsonObject = JsonObject.Parse(myString);

但是后来我不知所措。我很惊讶parse方法返回JsonValue而不是JsonObject。

我真正想做的是:

foreach (var child in jsonObject.Children)
{
  if (child.name == "People")
{
 // another foreach to loop over the people
 // get their name and age, eg. person.Name and person.Children.Age (LINQ this or something)

}

}
Run Code Online (Sandbox Code Playgroud)

有任何想法吗?

c# json .net-4.5

3
推荐指数
1
解决办法
3583
查看次数

如何优化此lambda表达式以使用包含单词列表的每一行的实体框架进行查询?

我有一些输入,像这样: "Steve Brian McFistycuffs Johnson"

我想查看我的数据库,并以任何顺序返回包含这些单词的所有记录.

我做的是什么

var matches = myContext.MyTable.Where( c => c.Name.Contains("Steve") && c.Name.Contains("Brian") && c.Name.Contains("McFistycuffs") && c.Name.Conains("Johnson"));

但是我需要动态地执行此操作,并且单词的数量可能会发生变化.

我还想确保无论我选择什么,它都不会影响实体框架创建SQL语句,例如.我想确保尽可能优化它.这意味着在lambda中做某种foreach可能不会起作用,因为实体框架不能轻易地将它映射到SQL.

有什么建议?

c# lambda entity-framework

3
推荐指数
1
解决办法
1041
查看次数

在表达式树中,如何使用需要与结果进行比较的表达式,例如.指数?

我知道怎么做:

    Expression body = Expression.Call(selector.Body, "Contains", null,
        Expression.Constant("cats", typeof(string)));
Run Code Online (Sandbox Code Playgroud)

由于'contains'返回true/false,因此没有问题.

但是,我如何进行IndexOf并查看结果是否大于5?

    Expression body = Expression.Call(selector.Body, "IndexOf", null,
        Expression.Constant("cats", typeof(string)));
Run Code Online (Sandbox Code Playgroud)

c# lambda expression-trees

3
推荐指数
1
解决办法
59
查看次数

在LINQ中,如何为每个ID选择一个项目?

这可能是显而易见的,但我无法理解它.

我有一个项目列表,例如:

BOB 5
Brian 5
Sam 6
James 7
Emily 8
Sandra 8
Michael 8
Run Code Online (Sandbox Code Playgroud)

这些是在 List<MyObject>

我想过滤列表,因此每个ID只有1个项目,通过选择具有唯一ID的第一个项目.

我应该结束

BOB 5
Sam 6
James 7
Emily 8
Run Code Online (Sandbox Code Playgroud)

我在制定干净的方法时遇到了麻烦.有任何想法吗?

c# linq

3
推荐指数
1
解决办法
1631
查看次数

EF不会让我指定连接字符串

它自动生成类的方式,它不会将连接字符串作为参数 - 尽管生成代码将一个传递给基类.我可以自己编辑模板,但是没有更好的方法,因为我可以重新生成模型(甚至删除和重新创建),我不希望它影响模板.

//------------------------------------------------------------------------------
// <auto-generated>
//    This code was generated from a template.
//
//    Manual changes to this file may cause unexpected behavior in your application.
//    Manual changes to this file will be overwritten if the code is regenerated.
// </auto-generated>
//------------------------------------------------------------------------------

public partial class MyEntities : DbContext
{
    public MyEntities()
        : base("<Connection string>")
    {
    }
...
Run Code Online (Sandbox Code Playgroud)

我正在使用DB第一种方法.一切正常但现在我已经创建了数据库的精确副本,我需要能够在两者之间切换.

c# entity-framework

3
推荐指数
1
解决办法
74
查看次数

嵌入的资源 txt 文件未更新

我有一个文件夹中有一个 .txt 文件的项目。.txt 文件设置为嵌入式资源。

我用这段代码来阅读它:

var assembly = Assembly.GetExecutingAssembly();
var manifestResources = assembly.GetManifestResourceNames();

string s = manifestResources.Single(c => c.EndsWith("Cats.txt"));
Run Code Online (Sandbox Code Playgroud)

这很好用。

但是我更新了 Cats.txt 并注意到我的项目没有更新。

我删除了 Cats.txt,发现它仍然可以正常工作并读取文件。

我尝试清理我的解决方案、重建和 iisreset,但它似乎坚持认为该文件仍然存在于程序集中,尽管我删除了它。

有任何想法吗?

c#

3
推荐指数
2
解决办法
2484
查看次数

使用LINQ我有一个列表列表,如何选择每个列表中存在的所有对象?

我有一份清单清单:

List<Tuple<string, List<SomeObject>>
Run Code Online (Sandbox Code Playgroud)

我想选择SomeObjects上面列表的所有行中存在的所有内容.

有些只会存在于一个或两个列表中,但我希望所有对象都存在于每个列表中,而其他对象则被丢弃.

如果没有一堆c#代码,我无法找到一个优雅的解决方案.有一个很好的方式吗?

c# linq

3
推荐指数
1
解决办法
159
查看次数

asp.net验证文本框 - 至少有一个文本框必须包含数据

我有三个文本框,我想验证它们.至少一个文本框必须包含数据.

我怎样才能做到这一点?

(文本框是家庭电话号码,工作电话号码,手机号码,我需要检查至少一种联系方式)

asp.net validation textbox

2
推荐指数
1
解决办法
2万
查看次数

如何使用Javascript在容器中找到第一个文本框?

我想使用javascript来查找容器中的第一个文本框,因此我可以将其设置为聚焦,但文本框可以嵌套.有没有一种简单的方法可以循环直到遇到第一个文本框?

javascript

2
推荐指数
1
解决办法
674
查看次数

包含浮动左项的Div不能正确展开

<div id="DateAndTime" style="clear:left; width:100%" class="Frame">
<h2>Date & Time Criteria</h2>
<h3>Permitted Days of the Week</h3>
<p class="DataForm" style="float:left">

<asp:CheckBox id="chkMonday" runat="server" Text="Monday"/><br />
<asp:CheckBox id="chkTuesday" runat="server" Text="Tuesday"/><br />
<asp:CheckBox id="chkWednesday" runat="server" Text="Wednesday"/><br />
<asp:CheckBox id="chkThursday" runat="server" Text="Thursday"/><br />
<asp:CheckBox id="chkFriday" runat="server" Text="Friday"/><br />
<asp:CheckBox id="chkSaturday" runat="server" Text="Saturday"/><br />
<asp:CheckBox id="chkSunday" runat="server" Text="Sunday"/><br />
</p>
<p class="DataForm" style="float:left">
<asp:CheckBox id="CheckBox1" runat="server" Text="Monday"/><br />
<asp:CheckBox id="CheckBox2" runat="server" Text="Tuesday"/><br />
<asp:CheckBox id="CheckBox3" runat="server" Text="Wednesday"/><br />
<asp:CheckBox id="CheckBox4" runat="server" Text="Thursday"/><br />
<asp:CheckBox id="CheckBox5" runat="server" Text="Friday"/><br …
Run Code Online (Sandbox Code Playgroud)

html

2
推荐指数
1
解决办法
2891
查看次数