小编Nul*_*nce的帖子

从Javascript访问MVC的模型属性

我有以下模型,它包含在我的视图模型中

public class FloorPlanSettingsModel
{
    public int Id { get; set; }
    public int? MainFloorPlanId { get; set; }
    public string ImageDirectory { get; set; }
    public string ThumbnailDirectory { get; set; }
    public string IconsDirectory { get; set; }
}
Run Code Online (Sandbox Code Playgroud)

如何从Javascript访问上述属性之一?

我试过这个,但我得到了"未定义"

var floorplanSettings = "@Model.FloorPlanSettings";
alert(floorplanSettings.IconsDirectory);
Run Code Online (Sandbox Code Playgroud)

javascript c# asp.net-mvc jquery model

135
推荐指数
4
解决办法
26万
查看次数

Visual Studio 2013 MSTest与NUnit

我公司正在将Visual Studio 2012升级到2013 Premium.在此期间,我们还希望使用Visual Studio Team Services开始自动化测试

我过去读过几篇MSTest vs nUnit的帖子和文章,但大多数都比较了旧版的MSTest.此外,与MSTest相比,nUnit有很多有利的评论.

我的问题是,考虑到微软对ALM的承诺,敏捷实践以及他们为VS2013 Premium和Visual Studio Team Services添加的所有新内容以促进和鼓励自动化测试,MSTest与nUnit相比如何?

在决定使用测试框架之前,我还应该考虑哪些其他因素?

nunit unit-testing mstest visual-studio visual-studio-2013

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

SignalR 2.0错误:无法加载文件或程序集Microsoft.Owin.Security

我正在逐步学习本教程

http://www.asp.net/signalr/overview/signalr-20/getting-started-with-signalr-20/tutorial-signalr-20-self-host

而且我在下面标出的行上有例外

        string url = "http://localhost:8080";
        using (WebApp.Start(url)) //<------ error on this line
        {
            Console.WriteLine("Server running on {0}", url);
            Console.ReadLine();
        }
Run Code Online (Sandbox Code Playgroud)

错误信息:

无法加载文件或程序集"Microsoft.Owin.Security,Version = 2.0.1.0,Culture = neutral,PublicKeyToken = 31bf3856ad364e35"或其依赖项之一.定位的程序集的清单定义与程序集引用不匹配.(HRESULT异常:0x80131040)

更多信息:

在我的项目解决方案中,引用指向NuGet的packages文件夹中的dll

这已由NuGet添加到我的App.config文件中

<assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
  <dependentAssembly>
    <assemblyIdentity name="Microsoft.Owin" publicKeyToken="31bf3856ad364e35" culture="neutral" />
    <bindingRedirect oldVersion="0.0.0.0-2.1.0.0" newVersion="2.1.0.0" />
  </dependentAssembly>
  <dependentAssembly>
    <assemblyIdentity name="Microsoft.Owin.Security" publicKeyToken="31bf3856ad364e35" culture="neutral" />
    <bindingRedirect oldVersion="0.0.0.0-2.0.0.0" newVersion="2.0.0.0" />
  </dependentAssembly>
</assemblyBinding>
Run Code Online (Sandbox Code Playgroud)

在packages文件夹中,packages\Microsoft.Owin.Security.2.0.0\lib\net45Microsoft.Owin.Security.dll的文件版本为2.020911.395

.net c# asp.net signalr

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

从Task.Run获取返回值

我在这里有以下代码

public static async Task<string> Start(IProgress<ProcessTaskAsyncExProgress> progress)
{
    const int total = 10;
    for (var i = 0; i <= total; i++)
    {
        await Task.Run(() => RunLongTask(i.ToString(CultureInfo.InvariantCulture)));
        if (progress != null)
        {
            var args = new ProcessTaskAsyncExProgress
            {
                ProgressPercentage = (int)(i / (double)total * 100.0),
                Text = "processing " + i
            };
            progress.Report(args);
        }
    }
    return "Done";
}

private static string RunLongTask(string taskName)
{
    Task.Delay(300);
    return taskName + "Completed!";
}
Run Code Online (Sandbox Code Playgroud)

在这一行:

var val = await Task.Run(() => RunLongTask(i.ToString(CultureInfo.InvariantCulture))).Result;
Run Code Online (Sandbox Code Playgroud)

如何获取RunLongTask的字符串值?

我试过了 …

.net c# task-parallel-library async-await

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

无法让log4net与.net windows服务一起工作

我有一个app.config和一个Windows服务log4net.config.

app.config:

  <configSections>
    <section name="log4net" type="log4net.Config.Log4NetConfigurationSectionHandler, log4net" />
  </configSections>
  <log4net configSource="log4net.config" />
Run Code Online (Sandbox Code Playgroud)

log4net.config:

<log4net>
  <appender name="LogFileAppender" type="log4net.Appender.RollingFileAppender">
    <param name="File" value="D:\Projects\Integration\Interface Module\bin\Logs\MyFirstLogger.log"/>
    <lockingModel type="log4net.Appender.FileAppender+MinimalLock" />
    <appendToFile value="true" />
    <rollingStyle value="Size" />
    <maxSizeRollBackups value="2" />
    <maximumFileSize value="1MB" />
    <staticLogFileName value="true" />
    <layout type="log4net.Layout.PatternLayout">
      <param name="ConversionPattern" value="%d [%t] %-5p %c %m%n"/>
    </layout>
  </appender>

  <root>
    <level value="ALL" />
    <appender-ref ref="LogFileAppender" />
  </root>
</log4net>
Run Code Online (Sandbox Code Playgroud)

我也添加了这个AssemblyInfo.cs:

[assembly: log4net.Config.XmlConfigurator(Watch = true)]
Run Code Online (Sandbox Code Playgroud)

在我的一个课程中,我有:

private readonly ILog _log = LogManager.GetLogger(MethodBase.GetCurrentMethod().DeclaringType);
Run Code Online (Sandbox Code Playgroud)

和 …

.net c# logging log4net log4net-configuration

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

VisualStudio:libgit2引发了一个错误.类别=结帐

我在Git中使用TFS,为Git安装了Visual Studio Tools.

我试图从TFS中提取所有提交(共5个),但我在下面收到此错误:

An error occurred. Detailed message: An error was raised by libgit2. 
Category = Checkout (MergeConflict).
2 conflicts prevent checkout
Run Code Online (Sandbox Code Playgroud)

我该如何解决这个问题?

错误

git version-control tfs visual-studio

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

引用system.web.cors

我正在尝试在我的Web API中实现cors支持.

我看过一对夫妇关于这一主题的博客文章,但我似乎无法找到System.Web.Cors.dll或System.Web.Http.Cors.dll

我需要安装什么吗?

.net rest web-services cors asp.net-web-api

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

将序列化表单的数据转换为json对象

我有一个如下的cshtml

@using (Html.BeginForm("Save", "Plans", FormMethod.Post, new { @class = "form-horizontal", id = "floorplan-form" }))
{
            @Html.TextBoxFor(m => m.FloorPlan.Name, new { placeholder = "Enter text", @class = "form-control" })

            @Html.DropDownListFor(m => m.FloorPlan.GroupId, new SelectList(Model.FloorPlanGroups, "Id", "Name"))             
}
Run Code Online (Sandbox Code Playgroud)

在我的javascript(在一个单独的javascript文件中),我正在尝试序列化此表单并将其转换为JSON对象.

var formData = $("#floorplan-form").serialize();
console.info(formData);
Run Code Online (Sandbox Code Playgroud)

打印出来

FloorPlan.Name=Test&FloorPlan.GroupId=15 
Run Code Online (Sandbox Code Playgroud)

var formData = $("#floorplan-form").serializeArray();
console.info(formData);
Run Code Online (Sandbox Code Playgroud)

给我:

屏幕截图

我试过这样做

var formData = JSON.parse($("#floorplan-form").serializeArray());
Run Code Online (Sandbox Code Playgroud)

但我得到这个错误:

Uncaught SyntaxError: Unexpected token o 
Run Code Online (Sandbox Code Playgroud)

asp.net-mvc jquery serialization json

31
推荐指数
3
解决办法
8万
查看次数

如何使用javascript获取MVC应用程序的基本URL

如何使用javascript获取基本URL?

例如,当我从visual studio浏览我的网站时,如果我的网址是http://localhost:20201/home/index,我希望得到http://localhost:20201

如果我在IIS上托管我的网站,如果我的虚拟目录名称是MyApp并且URL是http://localhost/MyApp/home/index,我希望得到http://localhost/MyApp

我尝试使用location.protocol+ location.hostname(和location.host),当我通过visual studio浏览我的网站时它们正常工作,但当我在IIS上托管它时,我得到http://localhost了/ MyApp被截断了.

javascript asp.net iis url asp.net-mvc

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

在窗口中关闭一个带有自定义关闭按钮的kendoui窗口

我使用的剑道UI窗口组件,它是类似于任何模态对话框.

我有一个关闭按钮,如何在单击该按钮时关闭窗口(而不是单击标题栏中的默认"x"按钮)

我的窗口中的内容是从另一个视图加载的

@(Html.Kendo().Window()
           .Name("window")
           .Title("Role")
           .Content("loading...")
           .LoadContentFrom("Create", "RolesPermissions", Model.Role)
           .Modal(true)
           .Width(550)           
           .Height(300)           
           .Draggable()
           .Visible(false)
          )
Run Code Online (Sandbox Code Playgroud)

在同一个观点中,我有

<span id="close" class="btn btn-inverse">Cancel</span>
Run Code Online (Sandbox Code Playgroud)

这是我在主视图中的内容(调用窗口的视图)

$(document).ready(function () {
    var window = $("#window").data("kendoWindow");

    $("#open").click(function (e) {
        window.center();
        window.open();
    });

    $("#close").click(function(e) {
        window.close();
    });
});
Run Code Online (Sandbox Code Playgroud)

javascript c# asp.net-mvc modal-dialog kendo-ui

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