小编Dis*_*ile的帖子

在4.5.2中使用.netstandard 1.2库

我创建了一个.netstandard 1.2库,该库与.net 4.5.2兼容。在我的库中,我引用的是NetStandard.Library 1.6:

{
    "version": "1.0.0-*",
    "dependencies": {
        "NETStandard.Library": "1.6.1"
    },

    "frameworks": {
        "netstandard1.2": { }
    }
}
Run Code Online (Sandbox Code Playgroud)

我使用dotnet pack从中创建了一个NuGet软件包,并将其安装在我的NuGet服务器上。我创建了一个针对.NET Framework 4.5.2的简单控制台应用程序。我尝试安装上面的NuGet软件包,并且得到了需要安装的大量依赖项列表:

Microsoft.NETCore.Platforms.1.1.0
System.Collections.4.3.0
System.Collections.Concurrent.4.3.0
... snip
NETStandard.Library.1.6.0
MyPackage.1.0.0
Run Code Online (Sandbox Code Playgroud)

我假设看到所有这些软件包的原因是因为我依赖于NETStandard.Library元软件包,但是有没有办法在不添加所有这些软件包的情况下将其安装到完整的.net Framework 4.5.2项目中?即使我不需要执行任何条件编译,我是否也应该将框架net452添加到我的库中?

c# .net-core

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

Razor语法 - 在Url.Content中使用模型属性

我试图找出使用Razor语法编写它的正确方法:

<div style="background: url(@Url.Content("~/images/@Model.ImageUrl"))">
</div>
Run Code Online (Sandbox Code Playgroud)

我正在使用@Url.Content("")并需要在字符串中使用Model属性,但我无法弄清楚正确的方法.

asp.net-mvc razor

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

asp.net上的asp.net mvc - 使用customErrors时出现问题

几天来,我一直在撞击这头,没有任何地方.我希望有一个捕获所有错误处理程序,重定向到控制器,向用户显示一个整洁的页面,以及执行相关的日志记录等.

问题是本地一切都很好,但是当我上传到azure时,我会得到标准的错误页面.

似乎azure不执行重定向,并忽略global.asax中的全局处理程序.

我没有在这里包含错误控制器的代码,因为我似乎从来没有这么远.

Web.Config中:

<customErrors mode="On" defaultRedirect="/error" redirectMode="ResponseRewrite"></customErrors>

路线入口:

routes.MapRoute("Error", "error/{*fluff}", new { controller = "Error", action = "Index", exception = new HttpException(404,"Direct call to controller") });

来自global.asax:

protected void Application_Error(object sender, EventArgs e)
{
    var routeData = new RouteData();

    routeData.Values["controller"] = "Error";
    routeData.Values["action"] = "index";
    routeData.Values["exception"] = Server.GetLastError();

    Response.Clear();
    Server.ClearError();

    IController controller = new ErrorController();
    controller.Execute(new RequestContext(new HttpContextWrapper(((MvcApplication)sender).Context), routeData));
}
Run Code Online (Sandbox Code Playgroud)

asp.net asp.net-mvc azure

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

MetadataType缺少程序集引用

  using System;
  using System.Collections.Generic;
  using System.Linq;
  using System.Web;
  using System.ComponentModel.DataAnnotations;




  namespace yplaylist.Models
  {
     [MatadataType(typeof(Song_Validation))]
     public partial class Song
     {

     }

     public class Song_Validation
     {



     }
 }
Run Code Online (Sandbox Code Playgroud)

MetadataType突出显示,它找不到缺少using指令或程序集引用?我错过了什么?

asp.net-mvc-3

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

ASP.net MVC - 用于POST操作的单独ViewModel

在我的MVC应用程序中,我有一个看起来与此类似的View Model:

public class ComplexViewModel
{
    public ComplexDetailsViewModel Details1 { get; set; }
    public ComplexDetailsViewModel Details2 { get; set; }
}

public class ComplexDetailsViewModel 
{
    public int Id { get; set; }
    public string DisplayValue1 { get; set; }
    public string DisplayValue2 { get; set; }
    // ...
}
Run Code Online (Sandbox Code Playgroud)

我原本在以下视图中执行以下操作:

@Html.HiddenFor(model => model.Details1.Id)
@Html.HiddenFor(model => model.Details2.Id)

@Html.DisplayFor(model => model.Details1.DisplayValue1)
...
Run Code Online (Sandbox Code Playgroud)

我会将完整的模型发布到控制器:

 public ActionResult Post(ComplexViewModel model)
Run Code Online (Sandbox Code Playgroud)

除了Id值之外,我实际上并不需要ComplexViewModel中的任何内容,因此我决定创建另一个专门用于POST数据的视图模型:

public class PostViewModel
{
    public int Details1Id { get; set; }
    public int Details2Id …
Run Code Online (Sandbox Code Playgroud)

c# asp.net-mvc viewmodel

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

带有句点的jQuery属性选择器

我正在尝试使用jQuery选择器查找具有特定名称的所有输入字段:

$('input[name=Filter']).click(function() {
    // do something
});
Run Code Online (Sandbox Code Playgroud)

这应该符合以下项目:

<input type="radio" name="Filter" value="A" />
<input type="radio" name="Filter" value="B" />
Run Code Online (Sandbox Code Playgroud)

这工作正常.我遇到的问题是我的名字是由ASP.net MVC动态生成的,名称有一个句点:

<input type="radio" name="Parent.Filter" value="A" />
<input type="radio" name="Parent.Filter" value="B" />
Run Code Online (Sandbox Code Playgroud)

我试着写下面的选择器:

$('input[name=Parent.Filter]').click(function() {
});
Run Code Online (Sandbox Code Playgroud)

我收到以下错误: Uncaught Syntax error, unrecognized expression: [name=Parent.Filter]

如何编写此表达式以使其正常工作?

jquery jquery-selectors

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

MVC Bundling - 包含单个bundle的.min文件

我的应用程序中有一个文件,我只有一个缩小版本,我想为它创建一个包:

bundles.Add(new ScriptBundle("~/bundles/maskedinput").Include(
    "~/Scripts/jquery.maskedinput-1.3.min.js"));
Run Code Online (Sandbox Code Playgroud)

问题是默认情况下在调试模式下,捆绑机制会忽略.min文件.我不想为所有捆绑包关闭此规则,但我想为此单个捆绑包禁用它.这可能吗?

c# asp.net-mvc web-optimization asp.net-mvc-4

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

更改/修改asp.net身份中的声明2

在Windows Identity Framework(WIF)中,您可以实施ClaimsAuthenticationManager以修改主体上的声明或向其添加新声明。

声明身份验证管理器在应用程序的声明处理管道中提供了一个可扩展性点,您可以在执行RP应用程序代码之前,使用该点来验证,过滤,修改传入的声明或将新声明插入到ClaimsPrincipal提出的声明集中。

ASP.net Identity 2是否具有这样的管道挂钩?如果我想添加一些声明而不将其保留在AspNetUserClaims表中,该怎么办?

c# asp.net-mvc claims-based-identity asp.net-identity-2

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

async/await deadlock而不使用Task.Result

我有一个使用async/await的web api:

public class SampleController : ApiController
{
    public async Task<IEnumerable<DocumentModel>> GetAll()
    {
        List<DocumentModel> modelItems = new List<DocumentModel>();

        var response = await SearchDocumentsAsync();
        var items = response.Results.ToList();
        foreach(var document in documents)
        {
            var model = new DocumentModel()
            {
                Id = document.Id,
                Name = document.Name
            };

            modelItems.Add(model);
        }

        return modelItems;
    }

    private Task<DocumentSearchResponse<Document>> SearchDocumentsAsync()
    {
        using (var searchClient = new SearchServiceClient(new SearchCredentials(searchServiceKey), searchServiceUri))
        using (var indexClient = searchClient.Indexes.GetClient(indexName))
        {
            var parameters = new SearchParameters()
            {
                IncludeTotalResultCount = true
            };

            // call …
Run Code Online (Sandbox Code Playgroud)

c# asynchronous async-await asp.net-web-api

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

kubectl run命令失败并出现连接拒绝错误

我正在关注kubernetes.io上的hellonode教程

http://kubernetes.io/docs/hellonode/

我在尝试执行"创建您的广告连播"部分时遇到错误.

当我运行此命令(用我创建的PROJECT_ID替换PROJECT_ID)时,我得到以下内容:

$ kubectl run hello-node --image=gcr.io/PROJECT_ID/hello-node:v1 --port=8080

The connection to the server localhost:8080 was refused - did you specify the right host or port?
Run Code Online (Sandbox Code Playgroud)

我只是输入kubectl版本时遇到类似的错误:

$ kubectl version

Client Version: version.Info{Major:"1", Minor:"2", GitVersion:"v1.2.2", GitCommit:"528f879e7d3790ea4287687ef0ab3f2a01cc2718", GitTreeState:"clean"}
The connection to the server localhost:8080 was refused - did you specify the right host or port?
Run Code Online (Sandbox Code Playgroud)

我不知道该怎么做,因为除了遵循本教程的步骤之外我没有使用kubernetes的经验.

kubernetes

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