小编ZZZ*_*ZZZ的帖子

在MVC Controller中配置DbContext,哪种方式"更好"?

在MVC 5中,脚手架代码将具有以下内容:

    public class MyController : Controller
{
    private MyContext db = new MyContext();

    protected override void Dispose(bool disposing)
    {
        if (disposing)
        {
            db.Dispose();
        }
        base.Dispose(disposing);
    }
Run Code Online (Sandbox Code Playgroud)

否则,我需要

using (var db = new MyContext())
{...}
Run Code Online (Sandbox Code Playgroud)

在每个行动中.

代码看起来很好,所以我不需要在每个动作中使用.但是,这是否受程序员的偏爱,或者这种样式在每个需要使用dbcontext的动作中使用时都有一些优势?

asp.net-mvc entity-framework

10
推荐指数
2
解决办法
1万
查看次数

如何在 Angular 6+ CLI 中使用 Handlebars.js?

我想以纯文本格式或 HTML 格式呈现基本的客户信函,以便客户可以在 TextArea 或 HTML 编辑器中进一步编辑。我正在考虑使用 Handlebars.js 来呈现带有小胡子标签的 HTML 模板以及包含各种业务信息的 JSON 对象。

我做过:

import * as Handlebars from 'handlebars';

...
            const template = Handlebars.compile(this.exampleHtmlTemplate);
            this.note = template({ title: 'My title', body: 'My body' });
Run Code Online (Sandbox Code Playgroud)

使用 Angular Cli 编译时,出现以下错误:

chunk {vendor} vendor.js, vendor.js.map (vendor) 7.84 MB [initial] [rendered]

WARNING in ./node_modules/handlebars/lib/index.js 22:38-56
require.extensions is not supported by webpack. Use a loader instead.

WARNING in ./node_modules/handlebars/lib/index.js 23:2-20
require.extensions is not supported by webpack. Use a loader instead.

WARNING in ./node_modules/handlebars/lib/index.js 24:2-20 …
Run Code Online (Sandbox Code Playgroud)

mustache handlebars.js typescript angular-cli angular

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

内部类具有相同的命名空间但在不同的程序集中?

基本上我有一个定义内部类的CS文件,然后我复制到各种CS项目.并且这些CS项目的程序集将加载到应用程序中.该程序似乎运行得很好.

但是,在同一名称空间中具有相同类名的多个类使我感到不安,即使它们在每个程序集内部也是如此.

是通过类名,命名空间以及AppDomain中的程序集唯一标识的类吗?

c#

5
推荐指数
1
解决办法
733
查看次数

如何在Nuget中排除/不显示.NET Framework包?

我在.NET 4.5.2或4.6.2上构建.NET应用程序,而不是使用.NET Core.在Visual Studio 2015中更新NuGet包时,"更新"选项卡列出了几十个作为.NET Framework一部分的软件包,如System.IO和System.Linq.

在每个VS解决方案文件夹中将这些包包含/存储在packages文件夹中是否合适?

可以/我应该只使用已经安装的.NET框架吗?

有没有办法不在NuGet VS的Updates选项卡中显示这些.NET Framework包?

显然,在更新到最新的xUnit.NET v2.2.0之后,NuGet VS开始推广31个更新,如此屏幕截图所示.但我不使用它们.

在此输入图像描述

在此输入图像描述

.net asp.net visual-studio nuget

5
推荐指数
1
解决办法
229
查看次数

Firefox从我的Web API网站请求XML和IE请求JSON,更改浏览器设置的内容是什么?

我有一个ASP.NET Web API网站,有时我只想查看返回的数据HTTP GET.虽然我知道如何通过编程获取XML或JSON,但我不知道在哪里更改浏览器的设置(IE,Firefox和Chrome)以请求XML或JSON?

xml json asp.net-web-api

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

使用 Xamarin.Forms 中的 View Model 属性绑定到 StaticResource?

我在 ResourceDictionary 中定义了一些自定义字体

<Application xmlns="http://xamarin.com/schemas/2014/forms"
         xmlns:x="http://schemas.microsoft.com/winfx/2009/xaml"
         x:Class="Fonlow.VA.App">
<Application.Resources>
    <ResourceDictionary>
        <OnPlatform x:TypeArguments="x:String" x:Key="SuperFont">
            <On Platform="Android" Value="Super.ttf#Super" />
            <On Platform="UWP" Value="/Assets/Super.ttf#Super" />
            <!--<On Platform="iOS" Value="OpenSans-Bold" />-->
        </OnPlatform>
        <OnPlatform x:TypeArguments="x:String" x:Key="NormalFont">
            <On Platform="Android" Value="Normal.ttf#Normal" />
            <On Platform="UWP" Value="/Assets/Normal.ttf#Normal" />
            <!--<On Platform="iOS" Value="OpenSans-Bold" />-->
        </OnPlatform>
    </ResourceDictionary>
</Application.Resources>
Run Code Online (Sandbox Code Playgroud)

  <Label Text="{Binding CurrentOptotype.Text}" FontFamily="{StaticResource SuperFont}" FontSize="{Binding CurrentFontSize}" TextColor="Black" />
Run Code Online (Sandbox Code Playgroud)

到现在为止还挺好。但是,我会在运行时通过 ViewModel 绑定切换 FontFamily,就像 FontSize 的绑定一样,因为 CurrentFontSize 是视图模型中的一个属性。我试过:

FontFamily="{Binding CurrentFontFamily}"
Run Code Online (Sandbox Code Playgroud)

CurrentFontFamily 的值可以指向现有的系统字体,但我想指向一个自定义字体,指向 ResourceDictionary 中定义的字体。

我当时尝试过:

FontFamily="{StaticResource {Binding CurrentFontFamily}}"
Run Code Online (Sandbox Code Playgroud)

并且对于这种化妆语法显然存在运行时错误。我只是想知道 XAML 中是否有一个在运行时通过 MVVM 视图模型切换自定义字体?

c# xaml android mvvm xamarin.forms

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

如何从 TypeScript 文件生成类型定义文件?

我在 TypeScript 中制作了一些类和模块。其他 TypeScript 应用程序可以直接使用 TS 文件,而无需类型定义。但是,要发布到 npm,我想我需要同时发布 JS 文件和类型定义文件。我认为手工制作 d.ts 文件可能很浪费,那么如何从 TypeScript 文件生成类型定义文件?

javascript npm typescript typescript-definitions

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

条件运算符在MVC Razor中的哪个地方运行不好?

在一个cshtml文件中,我有一个像行一样的表

<td>@lic.Dealer == null ? @String.Empty : @lic.Dealer.Name</td>
Run Code Online (Sandbox Code Playgroud)

但是,在运行时,由于Dealer为null,因此运行时不断在@ lic.Dealer.Name上抛出异常抱怨NullObjectReferenceException.

所以我不得不使用

var dealerName = @lic.Dealer == null ? @String.Empty : @lic.Dealer.Name;


<td>@dealerName</td>
Run Code Online (Sandbox Code Playgroud)

我只是想知道为什么第一段代码与条件运算符不兼容?

我正在使用MVC5.

c# asp.net-mvc

2
推荐指数
1
解决办法
451
查看次数

为什么在Visual Studio 2015中string.IsNullOrEmpty优于String.IsNullOrEmpty?

我一直在编写String.IsNullOrEmpty多年,在Visual Studio 2015中,IDE建议将它重构为string.IsNullEmpty,为什么?你会怎么做?

我很清楚String和string后面的内容,但是,我只是想知道为什么VS 2015能给我一个我不需要的提示.

c# visual-studio-2015

2
推荐指数
1
解决办法
176
查看次数

Typescript强类型键值对声明

我想为这样的json结构声明一个TypeScript接口:

{ 
404: function() { alert( "page not found" ); }, 
400 : function() {...} 
}
Run Code Online (Sandbox Code Playgroud)

键是数字,值是函数,你知道如何在TypeScript中声明这样的数据约束的接口吗?

javascript json typescript

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

WaitAll之后再次触发任务

HttpClient.GetAsync在Linq中使用或者任何异步方法或任何BCL异步方法Select可能会导致一些奇怪的两次射击.

这是一个单元测试用例:

[TestMethod]
public void TestTwiceShoot()
{
    List<string> items = new List<string>();
    items.Add("1");
    int k = 0;

    var tasks = items.Select(d =>
    {
        k++;
        var client = new System.Net.Http.HttpClient();
        return client.GetAsync(new Uri("http://testdevserver.ibs.local:8020/prestashop/api/products/1"));
    });

    Task.WaitAll(tasks.ToArray());

    foreach (var r in tasks)
    {

    }

    Assert.AreEqual(1, k);           
}
Run Code Online (Sandbox Code Playgroud)

测试将失败,因为k为2.不知何故,程序运行GetAsync两次触发的委托.为什么?

如果我删除foreach (var r in tasks),测试通过.为什么?

[TestMethod]
public void TestTwiceShoot()
{
    List<string> items = new List<string>();
    items.Add("1");
    int k = 0;

    var tasks = items.Select(d =>
    {
        k++;
        var …
Run Code Online (Sandbox Code Playgroud)

c# linq parallel-processing asynchronous task

0
推荐指数
1
解决办法
333
查看次数