小编use*_*170的帖子

实体框架核心 - 自定义脚手架

在Entity Framework 6中,我们可以通过运行添加脚手架使用的T4模板

Install-Package EntityFramework.CodeTemplates.CSharp
Run Code Online (Sandbox Code Playgroud)

但是在Entity Framework Core中,脚手架系统似乎没有使用T4模板,看起来脚手架也不能定制.它似乎都在c#类中,例如.

https://github.com/aspnet/EntityFramework/blob/a508f37cf5a0246e9b92d05429153c3d817ad5ec/src/Microsoft.EntityFrameworkCore.Tools.Core/Scaffolding/Internal/EntityTypeWriter.cs

有没有办法自定义脚手架的输出?

c# entity-framework-core

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

DateTimeFormatInfo.MonthDayPattern在Windows Server 2012中已更改 - 如何将其重新设置?

在澳大利亚,一位客户已成为"1/5"5月1日的捷径.我们刚刚从Windows Server 2008迁移到Windows Server 2012.

在LinqPad中使用以下代码:

Thread.CurrentThread.CurrentCulture = new System.Globalization.CultureInfo("en-au", false);
System.Globalization.DateTimeFormatInfo.CurrentInfo.MonthDayPattern.Dump();
DateTime.Parse("1/5").Dump();
Run Code Online (Sandbox Code Playgroud)

在Windows Server 2008上:

dd MMMM

1/05/2016 12:00:00 AM

在Windows Server 2012 R2上:

MMMM d

5/01/2016 12:00:00 AM

问题:

  1. 为什么MonthDayPattern发生了变化?澳大利亚人总是先有一天,然后是一个月
  2. 哪里可以在Windows Server UI中设置?UI仅公开长格式和短格式,而不是月和日格式
  3. 考虑DateTime.Parse到整个系统可能发生的一切(例如,模型绑定,验证等),如何在应用程序中以最少的更改来解决问题

.net c# cultureinfo

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

使用IdentityServer 4和WS-Federation

我意识到.Net Core不支持WS-Federation.但是我真的想使用IdentityServer 4,我意识到它也不支持WS-Federation.

但是,如果我有一个ASP.Net核心网站并且我以完整的.Net框架为目标,那么是否可以将WS-Federation与IdentityServer 4一起使用?是否有某种界面可以使用?

就像我使用代码从IdentityServer3.WsFederation端口使用IdentityServer4有多难?

ws-federation asp.net-core identityserver4

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

错误MSB1001:未知的开关 - Visual Studio 2017 RC

在Visual Studio 2017 RC中编译我的解决方案时,我得到了

C:\Code\src\MSBUILD : error MSB1001: Unknown switch.
  Switch: -

  For switch syntax, type "MSBuild /help"
Run Code Online (Sandbox Code Playgroud)

在每个项目上.

我可以使用Visual Studio 2015编译解决方案.我已将构建输出更改为"Diagnostic",这仍然是我所看到的.

visual-studio-2017

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

从 FOR XML Sql 查询中解码文本

假设我使用 FOR XML 子查询来允许连接和排序,此外,数据包含尖括号:

SELECT STUFF((SELECT ', ' + '<' + NAME + '>'
          FROM   [sys].[login_token]
          ORDER  BY NAME
          FOR XML PATH('')), 1, 2, '') AS Logins; 
Run Code Online (Sandbox Code Playgroud)

输出是这样的

&lt;\Everyone&gt;, &lt;BUILTIN\Administrators&gt;, &lt;BUILTIN\Administrators&gt;
Run Code Online (Sandbox Code Playgroud)

我怎样才能解码它,也就是说,像这样:

<\Everyone>, <BUILTIN\Administrators>, <BUILTIN\Administrators>,
Run Code Online (Sandbox Code Playgroud)

xml sql sql-server

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

ServiceStack.Interfaces中的System,Version = 4.0.0.0和System,Version = 2.0.5.0之间的冲突

我正在尝试解决构建警告,但我无法超越这一警告。我的目标是.Net 4.6.2,但似乎ServiceStack.Interfaces目标是较低的版本?在详细输出中:

There was a conflict between "System, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" and "System, Version=2.0.5.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e, Retargetable=Yes".
1>      "System, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" was chosen because it was primary and "System, Version=2.0.5.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e, Retargetable=Yes" was not.
1>      References which depend on "System, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" [C:\Program Files (x86)\Reference Assemblies\Microsoft\Framework\.NETFramework\v4.6.2\System.dll].
1>          C:\Program Files (x86)\Reference Assemblies\Microsoft\Framework\.NETFramework\v4.6.2\System.dll
1>            Project file item includes which caused reference "C:\Program Files (x86)\Reference Assemblies\Microsoft\Framework\.NETFramework\v4.6.2\System.dll".
Run Code Online (Sandbox Code Playgroud)

然后是许多看起来不错的常规程序集,然后是冲突:

1>      References which depend on "System, Version=2.0.5.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e, Retargetable=Yes" []. …
Run Code Online (Sandbox Code Playgroud)

.net c# servicestack

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

对 Active Directory 进行身份验证一次计为两次无效登录

给定以下代码,密码不正确

var principalContext = new PrincipalContext(
                           ContextType.Domain, 
                           ConfigurationManager.AppSettings["UPN"], 
                           ConfigurationManager.AppSettings["LDAPUsers"]);
response.IsAuthenticated = principalContext.ValidateCredentials(
                                            request.LoginName, 
                                            request.Password);
Run Code Online (Sandbox Code Playgroud)

如果我们然后检查

var user = UserPrincipal.FindByIdentity(
                           principalContext, 
                           IdentityType.SamAccountName, 
                           request.LoginName);
var invalidAttempts = user.BadLogonCount;
Run Code Online (Sandbox Code Playgroud)

的值为invalidAttempts2。换言之,验证凭据的单次尝试消耗 2 次登录计数。我假设发生这种情况是因为在 Kerberos 失败后它回退到 NTLM。

所以问题是 - 有没有一种方法可以使用 仅针对 Active Directory 进行验证PrincipalContext,并且每次仅将错误登录计数增加 1?

c# kerberos active-directory

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