小编Rég*_*IOX的帖子

如何将javascript对象传递给C#MVC 4控制器

在MVC4中,如何将javascript对象传递给AJAX中的C#控制器?最后我尝试了这个,但它没有用.

Javascript客户端:

    var myData = {Propr1: '', Propr2: ''};
    $.ajax({
        type: 'POST',
        data: JSON.stringify(myData),
        url: '/Home/SubmitMyData',
        contentType: 'application/json',
        dataType: 'json',
        success: alert('Youhou'),
        error: alert('not good')
    });
Run Code Online (Sandbox Code Playgroud)

C#服务器端方法:

    public ActionResult SubmitMyData(MyParamModel myParam)
    {
        // Do my stuff here with my parameter
        return View();
    }

    public class MyParamModel
    {
        string Prop1 { get; set; }
        string Prop2 { get; set; }
    }
Run Code Online (Sandbox Code Playgroud)

我的参数始终为null.我试图更改contentType但它仍然无法正常工作.我的错误在哪里?我发现了一些帖子,但我没有找到我做错了什么.

非常感谢.

javascript c# ajax asp.net-mvc asp.net-mvc-4

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

调用executor'executor:// xunit/VsTestRunner2/uap'时发生异常:无法加载文件或程序集'System.IO.FileSystem

当我在VSTS构建上运行单元测试时,我遇到了一个问题.当我在本地启动Visual Studio上的所有测试时,一切正常.完全没有错误.完善.但是当我通过VSTS构建的测试任务启动我的测试时,我有这个错误:

调用执行程序' executor:// xunit/VsTestRunner2/uap '时发生异常:无法加载文件或程序集'System.IO.FileSystem,Version = 4.0.1.0,Culture = neutral,PublicKeyToken =***********'或其中一个依赖项.该系统找不到指定的文件.

我的测试项目设置如下:

  • 版本2.4.0上的"xunit.runner.visualstudio","targetFramework"设置为"net462"(在packages.config中设置)

  • .NET Framework 4.6.2

在构建服务器上我有:

  • Visual Studio 2017,v15.7.5

  • Visual Studio 2015,v14.0

我的线索已经用完了......我肯定错过了一些东西......谢谢你的帮助

PS:

  • 所有测试都在VSTS构建上正确传递
  • 在我的构建任务的设置上,当我将"测试平台版本"设置为"Visual Studio 2015"时,它可以工作.但是,当我选择"Visual Studio 2017"或"最新"时,我有同样的错误......

编辑

我有Nuget包"FluentAssertions" v5.4.1和"System.ValueTuple" v4.5.0.我已经尝试降级其中一个和两个.它失败了.但我看到"FluentAssertions"依赖于"System.ValueTuple"

编辑2

正如@ PatrickLu-MSFT所说,将vs测试任务版本传递给1解决了这个问题.但是,当我仔细观察时,可用的测试平台版本是2015年和2013年:

VS测试任务版本1的测试平台版本

当我选择VS测试任务版本2时,我有这些选择:

VS测试任务版本2的测试平台版本

我想留下vs测试任务版本2(如果将来更新,我不想被卡住......).我看到的是当我将测试平台版本设置为" 最新 "或" Visual Studio 2017 "时,它不起作用.当我选择" Visual Studio 2015 "时,它正在工作......所以我指出的是:

  • 将vs测试任务版本设置为版本1使其工作(可能是因为最新的测试平台版本是" Visual Studio 2015 "......?)
  • 将测试任务版本设置为版本2 测试平台版本设置为"Visual Studio 2015"使其可用

所以:

  • 设置为版本1的 VS测试任务版本似乎与设置为版本2的VS测试任务版本的工作方式相同,其中"测试平台版本"设置为" Visual Studio 2015 …

tfs build xunit xunit.net azure-devops

11
推荐指数
1
解决办法
2239
查看次数

Apache Hive如何舍入到2位小数?

实际上我正在寻找有关Apache Hive中sum函数的更多细节.到现在为止,我明白我可以指定点后的位数:

val DECIMAL(18, 3)
Run Code Online (Sandbox Code Playgroud)

但是我找不到的是总和时的精度等级.例如,如果我加上精度等级为3的2位小数,那么sum函数的返回值是多少?我的精确度将保留下来吗?结果将被截断或舍入?我错过了什么?

非常感谢.

hadoop hiveql

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

从 Visual Studio 2017 使用 git 进行克隆时出现“路径中存在非法字符”

在 Visual Studio 2017 上,我无法使用 git 克隆存储库。我收到此错误消息:

在此输入图像描述

存储库 URL 很好,目标文件夹也很好(没有空格或特殊字符)。我在另一台电脑上尝试过,一切正常。当我使用 GitKraken、SourceTree 或在命令行中克隆同一项目时,一切正常。我尝试卸载 git,清理我的 tfs/git 凭据,取消选中 Visual Studio 安装程序上的“Git for Windows”选项,但徒劳无功......

有人遇到过同样的问题吗?你是怎么解决的?谢谢您的帮助!

Visual Studio 2017: 15.9.11
Git version: 2.21.0
Git url path: https://tfs.mysubdomain.mydomain.fr/dev/PROJECT/_git/PROJECT
TFS Server: https://tfs.mysubdomain.mydomain.fr/dev/PROJECT/PROJECT%20Team/_git/PROJECT
Run Code Online (Sandbox Code Playgroud)

git tfs visual-studio visual-studio-2017

6
推荐指数
1
解决办法
4989
查看次数

使用Serilog自定义LogEventLevel

我在.Net项目中使用Serilog和Seq。我的主要目标是记录一些特定事件。我想拥有自己的日志事件级别(例如“警告”,“详细”,“信息” ...)。但是我真的不知道是否有可能拥有我的自定义日志级别:

private static readonly ILogger Logger = Log.ForContext<MyController>();
        .
        .
        .
Logger.MyCustomLogLevel(....);
Run Code Online (Sandbox Code Playgroud)

可能吗?先感谢您

.net logging seq serilog

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