小编kma*_*ald的帖子

JSON.net:如何在不使用默认构造函数的情况下反序列化?

我有一个具有默认构造函数的类,也是一个带有一组参数的重载构造函数.这些参数与对象上的字段匹配,并在构造时分配.此时我需要默认构造函数用于其他目的,所以我想保留它,如果可以的话.

我的问题:如果我删除默认构造函数并传入JSON字符串,该对象将正确反序列化并传入构造函数参数而不会出现任何问题.我最终以我期望的方式取回填充的对象.但是,只要我将默认构造函数添加到对象中,当我调用JsonConvert.DeserializeObject<Result>(jsontext)属性时就不再填充了.

此时我尝试添加new JsonSerializerSettings(){CheckAdditionalContent = true}反序列化调用.那什么都没做.

另一个说明.除了参数以小写字母开头之外,构造函数参数确实与字段的名称完全匹配.我不认为这很重要因为,就像我提到的,反序列化工作正常,没有默认构造函数.

这是我的构造函数的示例:

public Result() { }

public Result(int? code, string format, Dictionary<string, string> details = null)
{
    Code = code ?? ERROR_CODE;
    Format = format;

    if (details == null)
        Details = new Dictionary<string, string>();
    else
        Details = details;
}
Run Code Online (Sandbox Code Playgroud)

c# json json.net

117
推荐指数
3
解决办法
9万
查看次数

在使用MSBuild发布之前执行web.config转换

我正在尝试使用MS Build为两个Web应用程序进行Web部署发布,以供内部使用和测试.我为每个要发布的环境设置了不同的解决方案配置.IE DevA,DevB.我已经更新了所有web.configs来进行正确的转换.作为一个注释,当我通过Visual Studio进行右键单击发布时,转换工作,所以我已经将这些作为问题排除.我正在运行的当前bat文件使用此命令来完成工作:

"C:\ Program Files(x86)\ MSBuild\12.0\Bin\msbuild"project.csproj/t:Clean; Rebuild; Publish/p:DeployOnBuild = true; PublishProfile = DevB1_API; AllowUntrustedCertificate = True; username = username; password =密码

当我运行此命令时,发布工作正常.但是,web.config没有被转换.我错过了一个msbuild参数来强制这种情况发生吗?任何帮助,将不胜感激!谢谢.

c# asp.net msbuild

23
推荐指数
1
解决办法
8343
查看次数

我在signalr javascript客户端中获得了未定义的连接ID

根据我遇到的所有文档,我应该可以在我的连接启动后调用$ .connection.hub.id.这是我的代码:

    var handshake = $.connection.handshakeHub;
    $.connection.hub.start().done(function () {
        console.dir($.connection.hub);
        console.log('connection started with id: ' + $.connection.hub.id);
        self.parentConnectionId = document.cookie.replace(/(?:(?:^|.*;\s*)connection\s*\=\s*([^;]*).*$)|^.*$/, "$1");
        handshake.server.connect(self.parentConnectionId, $.connection.hub.id);
    });
Run Code Online (Sandbox Code Playgroud)

我成功连接,握手代理连接呼叫命中服务器,因此它不像连接是轰炸.我还在连接后检查了dev工具中的属性,ID仍未定义.

我已经尝试使用Signalr的2.1和2.2版,但没有运气.有人对此有经验吗?这是杀了我.

javascript signalr

5
推荐指数
2
解决办法
4316
查看次数

标签 统计

c# ×2

asp.net ×1

javascript ×1

json ×1

json.net ×1

msbuild ×1

signalr ×1