小编Rav*_*tel的帖子

ASP.NET身份+ Windows身份验证(混合模式 - 表单+ Windows)

在提出这个问题之前,我已尽力搜索网页.我已经在stackoverflow上看到了类似的问题,但是,很长一段时间没有人满意地回答.这是再次尝试解决这个反复出现的问题.

问题

如何构建一个ASP.NET MVC 5网站,它为Intranet用户使用"Windows Auth",为Internet用户使用"Forms Auth"?我们希望使用ASP.NET Identity来实现这一目标.此外,我们不希望使用Active Directory组进行授权.对于Intranet用户,我们希望使用Active Directory对它们进行身份验证,然后回退到ASP.NET Identity以管理其角色和其他配置文件数据.

如果我们不要求最终用户选择auth方法,那就太好了.Web应用程序应无缝地登录Intranet用户.他们甚至不应该知道有登录屏幕.同样,不应要求互联网用户输入其域名凭据.他们应该立即看到基于表单的登录屏幕.

有没有推荐的解决方法?或者你可以评论以下任何一个是否是正确的解决方案?

http://world.episerver.com/blogs/Dan-Matthews/Dates/2014/8/Mixing-Forms-and-Windows-Authentication/

https://github.com/MohammadYounes/MVC5-MixedAuth

http://mvolo.com/iis-70-twolevel-authentication-with-forms-authentication-and-windows-authentication/

仅供参考这是2004年的文章,现在可能没什么用处:https: //msdn.microsoft.com/en-us/library/ms972958.aspx

asp.net asp.net-mvc windows-authentication asp.net-identity

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

仅在数据库中存储日期而不是时间部分C#

我有一个测试类和一个ExecutionDate只存储日期的属性,但是当我们使用[DataType(DataType.Date)]它时也将时间部分存储在数据库中,但我只想要日期部分.

public class Test
{
     [Key]
     public int Id { get; set; }

     [DataType(DataType.Date)]
     public DateTime ExecutionDate { get; set; }      
}
Run Code Online (Sandbox Code Playgroud)

有没有办法只使用Entity Framework在db中存储日期时间部分?请帮我....

我在使用时添加了快照[DataType(DataType.Date)],存储时间部分00:00我要删除它

在此输入图像描述

c# datetime entity-framework sqldatatypes entity-framework-6.1

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

Clarification on how IAsyncEnumerable works with ASP.NET Web API

I encountered an interesting behavior while exploring IAsyncEnumerable in an ASP.NET Web API project. Consider the following code samples:

    // Code Sample 1
    [HttpGet]
    public async IAsyncEnumerable<int> GetAsync()
    {
        for (int i = 0; i < 10; i++)
        {
            await Task.Delay(1000);
            yield return i;
        }
    }


    // Code Sample 2
    [HttpGet]
    public async IAsyncEnumerable<string> GetAsync()
    {
        for (int i = 0; i < 10; i++)
        {
            await Task.Delay(1000);
            yield return i.ToString();
        }
    }
Run Code Online (Sandbox Code Playgroud)

Sample 1 (int array) returns {} as …

c# asp.net-core asp.net-core-webapi iasyncenumerable

12
推荐指数
2
解决办法
3827
查看次数

如果要在DMZ中托管而不能直接访问数据库(tcp端口1433被防火墙阻止),如何设计ASP.NET MVC Web应用程序层?

请考虑以下网络安全设置:

       Users         Internet
         |        
  ====Firewall==== Port 80, 443 only
         |              
     Web Server      DMZ - ASP.NET MVC + Web API
         |          
  ====Firewall==== Port 80, 443 only
         |         
     "App" Server   WCF or ASP.NET Web API ??
         |           
      Database      Internal network
Run Code Online (Sandbox Code Playgroud)

我在很多客户端看到了上面的网络设置.IT基础架构团队不允许DMZ中的Web服务器通过端口1433建立与内部网络中托管的SQL Server的直接连接.反讽我看到web.config位于Web服务器上,带有纯文本数据库密码,他们是好的.

通常我已经看过并研究了在"App"服务器上托管WCF的解决方案(因为它可以在HTTP端口上使用),如图所示.WCF成为Web前端与DB交互的唯一方式.使用WCF的一个"好处"是它返回强类型对象,这些对象很容易从ASP.NET MVC前端消耗.

问题:

  1. 使用WCF是因为它允许在80或443上进行数据传输并返回强类型对象.这是一个不错的选择吗?
  2. 应该使用ASP.NET Web API吗?如果是这样,如何使用复杂的对象图实现强类型?JSON.net和内置序列化程序是否足以完成这项工作?
  3. 有更好的解决方案吗?

请注意,我们目前无法使用ASP.NET Core.

由于这是一个反复出现的问题,我真的很想听听社区是否有比使用WCF更好的解决方案.

c# asp.net asp.net-mvc wcf asp.net-web-api

8
推荐指数
1
解决办法
672
查看次数

System.Data.SQLite.Core 和 Microsoft.Data.Sqlite.Core 的区别

我尽力在谷歌上搜索这个,没有运气。除了作者,一个是 SQLite,另一个是 Microsoft,在做出选择之前,有什么重要的区别需要注意吗?

.net c# sqlite .net-core ef-core-2.0

5
推荐指数
0
解决办法
506
查看次数