小编Sup*_*JMN的帖子

Visual Studio:更改GIT插件的存储库的默认路径

我想从Git-Hub和Visual Studio克隆存储库,建议的默认路径是C:\ Users [User]\Sources\Repos [NameOfProject]

快照

我们如何改变它?每次我创建或克隆仓库时,路径都保持不变.

git visual-studio

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

无法在ASP.NET Core 2.0中解析DbContext

首先,我正在尝试使用示例数据为我的数据库设定种子.我已经读过这是这样做的方法(在Startup.Configure中)(请参阅ASP.NET Core RC2种子数据库)

我正在使用ASP.NET Core 2.0和默认选项.

像往常一样,我注册了我DbContextConfigureServices.但在那之后,在Startup.Configure方法中,当我尝试使用GetRequiredService它解决它时,它抛出此消息:

System.InvalidOperationException:'无法从根提供程序解析作用域服务'SGDTP.Infrastructure.Context.SGDTPContext'.

我的Startup类是这样的:

public abstract class Startup
{
    public Startup(IConfiguration configuration)
    {
        Configuration = configuration;
    }

    public IConfiguration Configuration { get; }

    public void ConfigureServices(IServiceCollection services)
    {
        services.AddDbContext<SGDTPContext>(options => options.UseInMemoryDatabase("MyDatabase"))
        services.AddMvc();
    }

    public void Configure(IApplicationBuilder app, IHostingEnvironment env)
    {
        if (env.IsDevelopment())
        {
            app.UseDeveloperExceptionPage();
        }

        app.UseMvc();

        SeedDatabase(app);
    }

    private static void SeedDatabase(IApplicationBuilder app)
    {
        using (var context = app.ApplicationServices.GetRequiredService<SGDTPContext>())
        {
            // Seed the Database
            //... …
Run Code Online (Sandbox Code Playgroud)

.net c# asp.net entity-framework asp.net-core

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

Type和TypeInfo之间有什么区别或关系?

我不能完全理解何时使用这一个或另一个.他们非常相似,现在和他们一起让我感到困惑.说到反射,我不知道是使用普通的Type还是TypeInfo.

.NET Framework本身增加了更多的混淆assembly.DefinedTypes.它检索到IEnumerable<TypeInfo>我认为它的位置IEnumerable<Type>.此外,还有一种typeInfo.AsType()方法.那是什么意思?他们可以互换吗?

而且,他们的方法非常相似.

似乎TypeInfo就像是经典的更强大的版本Type.我错了吗?

谢谢!

.net reflection types

25
推荐指数
1
解决办法
3495
查看次数

检查空参数的最佳方法(Guard子句)

例如,您通常不希望构造函数中的参数为null,因此看到类似的东西是很正常的

if (someArg == null)
{
    throw new ArgumentNullException(nameof(someArg));
}

if (otherArg == null)
{
    throw new ArgumentNullException(nameof(otherArg));
}
Run Code Online (Sandbox Code Playgroud)

它会使代码混乱.

有没有办法比这更好地检查一个参数列表的参数?

像"检查所有参数并抛出ArgumentNullException,如果它们中的任何一个为null并且为您提供null的参数"之类的东西.

顺便说一下,关于重复的问题声明,这不是关于用属性或内置的东西标记参数,而是有些人称之为Guard Clauses来保证对象接收初始化的依赖关系.

c# constructor arguments

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

使用PowerShell设置特殊文件夹的位置

作为管理员,我想将特殊文件夹(文档,音乐,下载...)的默认位置更改为其他路径.我可以手动执行此操作,但我希望有一个PowerShell脚本来执行此操作.

是否有任何PS对象提供执行此操作的功能?我该怎么做?谢谢.

powershell path special-folders

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

Raspbian/ARM上的.NET Core?

我们知道.NET Core支持Linux x64和x86,MacOS X,Windows ......但它是否可以在Linux中用于Raspberry Pi?(例如Raspbian).

.net raspberry-pi raspbian iot .net-core

13
推荐指数
1
解决办法
5972
查看次数

ReactiveUI,View/ViewModel注入和DI一般

最近我试图让自己进入UI开发的新时代并发现了ReactiveUI.我喜欢它的陈述性.

我想做一个完整的切换,所以我试着理解在ReactiveUI的这个新世界里是如何做出的.我选择了ReactiveUI,因为我看到它是由一个非常聪明的人(Paul C. Betts)维护的.

我对它很陌生,我可能会对StackOverflow充满疑问,因为我拥有巨大的力量,我认为它值得学习和掌握.

让我们进入细节:

我一直使用View-First.我是Cinch Framework的资深用户(http://cinch.codeplex.com/)

它使用MEF将ViewModel注入每个View.您只需使用[ViewModel("SampleView")]装饰ViewModel并向View添加一个附加属性(ViewModelLocator.ViewModel ="SampleView"),每当View加载时,相应的ViewModel将被实例化并注入其中DataContext与您选择的生命周期.

这种机制虽然有效,但也有一些不便之处.最糟糕的是:它使用了一个定位器.

正如Mark Seemann在他的书中所说,ServiceLocator是一种应该避免的反模式.

  1. 所以我的第一个问题是:ReactiveUI是否建立在基于Locator的基础架构之上?
  2. View-First或ViewModel-First?在良好实践,解耦,SOLID以及像我这样的疯狂,亲微软清洁代码爱好者关心的问题方面,哪些更好?哪个会让我睡得更好,并为我的应用程序提供所有这些可靠性的好处?

c# mvvm reactiveui

11
推荐指数
2
解决办法
6080
查看次数

如何用Win2D(行间距)计算FontFamily的高度?

我想知道如何使用Win2D在Window Universal Application中计算给定字体的高度(具有其属性,如大小,重量,样式......).

我之前使用的是a CanvasTextLayout,但它需要一个文本才能工作,就像在这一行:

var ctl = new CanvasTextLayout(session, "Some text", new CanvasTextFormat(), constraintWidth, constraintHeight);

在我的情况下,我将没有文本,因为我正在寻找的是给定字体(其样式,大小,重量......)的所有字形都适合的高度.

编辑:我也尝试过CanvasFontFace该类,但它似乎没有任何公共构造函数.

.net c# drawing win2d uwp

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

如何在 Entity Framework Core 中调试和修复“可空对象必须具有值”?

我正在用这种方法进行投影:

public async Task<TradeDetail> Get(int tradeId)
{
    var firstOrDefaultAsync = await context.EvgTGTrade
        .Where(x => x.IdTrade == tradeId)
        .Select(trade => new TradeDetail
        {
            Id = trade.IdTrade,
            Code = trade.CdTrade,
            Description = trade.DeTrade,
            Comments = trade.DeComentarios,
            TypeId = trade.IdTipoTrade,
            BrokerId = trade.EvgTGBrokerTrade.FirstOrDefault().IdBroker,
            BillingCycleId = trade.IdCicloFacturacion,
            CounterpartId = trade.IdSujeto,
            StartDate = trade.FhIni,
            EndDate = trade.FhFin,
            SignatureDate = trade.FhFirma,
            Positions = trade.EvgTGPosicion.Select(pos => new Position
            {
                Amount = pos.Cantidad,
                Code = pos.CdPosicion,
                Description = pos.DePosicion,
                LogisticElement = pos.IdElemLogNavigation.DeElemLog,
                StartDate = pos.FhIni,
                EndDate = pos.FhFin, …
Run Code Online (Sandbox Code Playgroud)

.net c# nullable entity-framework-core

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

如何检测我们在 .NET 中运行的是 ARM64 版本的 Windows 10?

我创建了一个 C# .NET 控制台应用程序,可以在 Windows 10 x86、x64 和 ARM64 中运行(通过模拟器层)。

我想知道如何检测应用程序正在这些平台上运行。我知道如何检测 x86 和 x64,但如何检测应用程序在 ARM64 内运行

这是 Visual Studio 在我的 ARM64 系统中运行的快照。可以看到它被检测为X86

在此输入图像描述

.net c# arm64

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