小编Ami*_*mit的帖子

如何使用json.net忽略类中的属性null

我正在使用Json.NET将类序列化为JSON.

我有这样的课:

class Test1
{
    [JsonProperty("id")]
    public string ID { get; set; }
    [JsonProperty("label")]
    public string Label { get; set; }
    [JsonProperty("url")]
    public string URL { get; set; }
    [JsonProperty("item")]
    public List<Test2> Test2List { get; set; }
}
Run Code Online (Sandbox Code Playgroud)

我想将添加JsonIgnore()属性,Test2List只有当财产Test2Listnull.如果它不为null,那么我想将它包含在我的json中.

c# json.net

497
推荐指数
10
解决办法
30万
查看次数

如何在C#中更新存储在Dictionary中的值?

如何更新字典中特定键的值Dictionary<string, int>

c# dictionary

412
推荐指数
6
解决办法
50万
查看次数

如何将String转换为其等效的LINQ表达式树?

这是原始问题的简化版本.

我有一个名为Person的类:

public class Person {
  public string Name { get; set; }
  public int Age { get; set; }
  public int Weight { get; set; }
  public DateTime FavouriteDay { get; set; }
}
Run Code Online (Sandbox Code Playgroud)

......然后说一个例子:

var bob = new Person {
  Name = "Bob",
  Age = 30,
  Weight = 213,
  FavouriteDay = '1/1/2000'
}
Run Code Online (Sandbox Code Playgroud)

我想在我最喜欢的文本编辑器中将以下内容写成字符串 ....

(Person.Age > 3 AND Person.Weight > 50) OR Person.Age < 3
Run Code Online (Sandbox Code Playgroud)

我想取这个字符串和我的对象实例并评估一个TRUE或FALSE - 即在对象实例上评估一个Func <Person,bool>.

这是我目前的想法:

  1. 在ANTLR中实现基本语法以支持基本比较和逻辑运算符.我想在这里复制Visual Basic优先级和一些功能集:http://msdn.microsoft.com/en-us/library/fw84t893(VS.80).aspx
  2. 让ANTLR从提供的字符串中创建合适的AST. …

c# dsl lambda antlr predicate

164
推荐指数
4
解决办法
8万
查看次数

javascript中不区分大小写的正则表达式

嗨,我想使用JavaScript从我的URL中提取查询字符串,我想对查询字符串名称进行不区分大小写的比较.这是我在做的事情:

var results = new RegExp('[\\?&]' + name + '=([^&#]*)').exec(window.location.href);
        if (!results) { return 0; }
        return results[1] || 0;
Run Code Online (Sandbox Code Playgroud)

但上面的代码执行区分大小写的搜索.我试过/<regex>/i但它没有帮助.任何想法如何实现?

javascript regex

112
推荐指数
4
解决办法
8万
查看次数

交易与精巧点网

我想在多个表上运行多个insert语句.我正在使用dapper.net.我没有看到任何方法来处理与dapper.net的交易.

请分享您对如何使用dapper.net进行交易的想法.

c# transactions dapper

98
推荐指数
6
解决办法
5万
查看次数

使用jQuery获取在下拉列表中选择的当前值

我的页面上有一组动态生成的下拉框.基本上我用jQuery克隆它们.现在我想捕获更改事件的每个下拉列表中选择的值.

我试过这样的东西,但是没用.

$('._someDropDown').live('change', function(e) {
            //debugger;
            var v = $(this);
            alert($(this + ':selected').val());
            alert($(this).val());
        });
Run Code Online (Sandbox Code Playgroud)

我该如何完成?

jquery

53
推荐指数
4
解决办法
14万
查看次数

如何使用jQuery将行追加到表中?

嗨,我试图使用jQuery向表添加一行,但它无法正常工作.
可能是什么原因?

而且,我可以为新添加的行添加一些值吗?

这是代码:

<html>
<head>
    <script type="text/javascript" src="jquery.js"></script>
    <script type="text/javascript">
        $('a').click(function() {
            $('#myTable').childs('tr').append('<tr class="child"><td>blahblah<\/td></tr>');
        });
    </script>
    <title></title>
</head>
<body>
    <a href="">Link</a>
    <table id="myTable">
        <tbody>
            <tr>
                <td>
                    test
                </td>
            </tr>
        </tbody>
    </table>
</body>
</html>
Run Code Online (Sandbox Code Playgroud)

html jquery

52
推荐指数
4
解决办法
24万
查看次数

你如何在浏览器中编辑Javascript?

我正在寻找一种在浏览器中编辑JavaScript的方法,例如Firefox,并且可以执行它.Firebug允许我们动态编辑HTML和CSS,但JavaScript很痛苦.我必须回到源头并修改它.

我不明白为什么浏览器开发人员工具不允许编辑.有办法吗?

[更新]:2015年标注了新答案

快速指针:

  • IE现在提供了最好的开发/调试体验之一
  • Chrome在编写javaScript时提供了IntelliSense,这很酷
  • FF的工作方式与2010年相同..!

可以使用所有三个(Firefox,Internet Explorer和Chrome)浏览器控制台来更新现有功能:假设我有一个a()用来做console.log('a')的功能,我可以去控制台,重新定义功能a()alert('a')并再次执行它以查看警报框.

当我在2010年提出这个问题时,浏览器在调试JavaScript方面并不是那么出色,而且我可能还没有意识到可以动态替换一个函数.

javascript browser

42
推荐指数
3
解决办法
5万
查看次数

Server.Transfer throws执行子请求时出错.怎么解决?

我有一个HttpModuleC#2.0来处理抛出的异常.每当抛出异常时,都会调用带有一些查询字符串的错误页面(aspx).它完成了Server.Transfer().

但是当控件尝试执行时Server.Transfer(),会抛出以下异常:

执行[pagename] .aspx的子请求时出错.

Request.Redirect()正常工作.

我尝试EnableViewStateMac="false"在传递请求的页面的Page指令中设置.仍然存在问题.

这是我试过的代码:

string errorPage = "errorpage.aspx?id=" + someErrorId
HttpContext.Current.Server.Transfer(errorPage,true);
Run Code Online (Sandbox Code Playgroud)

知道如何解决这个问题吗?

asp.net server.transfer c#-2.0

29
推荐指数
3
解决办法
7万
查看次数

RegisterForEventValidation只能在渲染期间调用

我有一个web方法,将从jquery ajax调用:

[WebMethod]
public string TestMethod(string param1, string param2)
{
    StringBuilder b = new StringBuilder();
    HtmlTextWriter h = new HtmlTextWriter(new StringWriter(b));
    this.LoadControl("~/Pages/Controls/Listing.ascx").RenderControl(h);
    string controlAsString = b.ToString();
    return controlAsString;
}
Run Code Online (Sandbox Code Playgroud)

(这是一种非静态的方法,我们能够击中它.这不是问题)

执行loadControl()方法时,我收到一条错误消息:只能在Render期间调用RegisterForEventValidation.

我已经为当前的aspx,禁用的viewstate包含了EnableEventValidation ="false".但我仍然得到同样的错误.有什么想法吗?

asp.net jquery rendercontrol

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