我想从Git-Hub和Visual Studio克隆存储库,建议的默认路径是C:\ Users [User]\Sources\Repos [NameOfProject]
我们如何改变它?每次我创建或克隆仓库时,路径都保持不变.
首先,我正在尝试使用示例数据为我的数据库设定种子.我已经读过这是这样做的方法(在Startup.Configure中)(请参阅ASP.NET Core RC2种子数据库)
我正在使用ASP.NET Core 2.0和默认选项.
像往常一样,我注册了我DbContext
的ConfigureServices
.但在那之后,在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) 我不能完全理解何时使用这一个或另一个.他们非常相似,现在和他们一起让我感到困惑.说到反射,我不知道是使用普通的Type还是TypeInfo.
.NET Framework本身增加了更多的混淆assembly.DefinedTypes
.它检索到IEnumerable<TypeInfo>
我认为它的位置IEnumerable<Type>
.此外,还有一种typeInfo.AsType()
方法.那是什么意思?他们可以互换吗?
而且,他们的方法非常相似.
似乎TypeInfo就像是经典的更强大的版本Type
.我错了吗?
谢谢!
例如,您通常不希望构造函数中的参数为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来保证对象接收初始化的依赖关系.
作为管理员,我想将特殊文件夹(文档,音乐,下载...)的默认位置更改为其他路径.我可以手动执行此操作,但我希望有一个PowerShell脚本来执行此操作.
是否有任何PS对象提供执行此操作的功能?我该怎么做?谢谢.
我们知道.NET Core支持Linux x64和x86,MacOS X,Windows ......但它是否可以在Linux中用于Raspberry Pi?(例如Raspbian).
最近我试图让自己进入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是一种应该避免的反模式.
我想知道如何使用Win2D在Window Universal Application中计算给定字体的高度(具有其属性,如大小,重量,样式......).
我之前使用的是a CanvasTextLayout
,但它需要一个文本才能工作,就像在这一行:
var ctl = new CanvasTextLayout(session, "Some text", new CanvasTextFormat(), constraintWidth, constraintHeight
);
在我的情况下,我将没有文本,因为我正在寻找的是给定字体(其样式,大小,重量......)的所有字形都适合的高度.
编辑:我也尝试过CanvasFontFace
该类,但它似乎没有任何公共构造函数.
我正在用这种方法进行投影:
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) 我创建了一个 C# .NET 控制台应用程序,可以在 Windows 10 x86、x64 和 ARM64 中运行(通过模拟器层)。
我想知道如何检测应用程序正在这些平台上运行。我知道如何检测 x86 和 x64,但如何检测应用程序在 ARM64 内运行?
这是 Visual Studio 在我的 ARM64 系统中运行的快照。可以看到它被检测为X86
.net ×6
c# ×6
.net-core ×1
arguments ×1
arm64 ×1
asp.net ×1
asp.net-core ×1
constructor ×1
drawing ×1
git ×1
iot ×1
mvvm ×1
nullable ×1
path ×1
powershell ×1
raspberry-pi ×1
raspbian ×1
reactiveui ×1
reflection ×1
types ×1
uwp ×1
win2d ×1