小编Jon*_*ner的帖子

在c#4.0中执行fire and forget方法的最简单方法

我真的很喜欢这个问题:

在C#中执行fire and forget方法的最简单方法是什么?

我只是想知道,现在我们在C#4.0中有并行扩展,是否有更好的更简洁的方法来使用并行linq进行Fire&Forget?

.net c# .net-4.0 task-parallel-library fire-and-forget

86
推荐指数
4
解决办法
5万
查看次数

有没有办法在System.Runtime.Caching中强制执行MemoryCache的大小限制?

我正在使用.net 4内存缓存.我想将缓存的大小限制为10mb,因为我不希望我的应用程序滥用其中的内容.

我还想知道在任何给定时间我的缓存有多少内存.我怎么能在运行时说出来?

caching .net-4.0

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

.net服务架构中的n层身份和授权

我正在构建一个应用程序,其中需求似乎是标准问题(至少对我来说)...我有一个基于asp .net mvc的Web.UI和来自iphone,andriod和blackberry的客户端.

因此,明智的做法是将我的所有业务逻辑移动到可以通过http访问的服务层.此服务层必须接受具有用户上下文(身份)的请求,并且以一种不错的方式执行授权,无论哪种类型的客户端与之通信(我希望?).

在一年多的时间里,我做了一个3个月的演出,在混合的内部部署和云架构中使用了WIF(Windows Identity Foundation).我喜欢它.引起共鸣的三件事是(1)外化认证而不关心如何完成,(2)从业务逻辑中删除授权逻辑,(3)基于声明的授权.

在过去的一年里,我听说并关注Rest Services的所有"酷炫的嬉皮士做事方式".所以我虽然很棒,但试试吧.在我开始玩游戏并获得编码之后,我开始变得非常困惑(并且随后在没有编写另一行c#的情况下阅读了大约10个小时).我仍然对所有SOAP vs REST,WS.*vs Http,SAML vs SWT babble感到困惑.我真的不希望这个线程是关于那个,因为有足够的说法在stackoverflow,但我觉得我有两个阵营之间的选择,当它不是真的感觉我想要一个或另一个但每个位?

对我来说,我上面提到的关于WIF的3点似乎并不像应该与WS绑定的概念.*?但是我感觉到他们,或者至少WIF现在是如何产生的,没有一些专家调整(例如我几天前才发现这篇文章 - http://zamd.net/2011/ 02/08/using-simple-web-token-swt-with-wif /).

我不太了解的其他领域是我的客户端(iphone,andriod,blackberry)能够玩WIF,是否是向他们抛出SAML令牌的STS,它们的行为就像浏览器一样并传回去在标题中就像任何其他客户端一样?是的,我必须要找出来,但如果这是WIF的交易破坏者,我发布后直接发现,那么至少我可以把注意力从它上面移开.

最后还要再加一点.我真的不想考虑这些.我想使用第三方身份验证/身份提供商 - http://www.janrain.com/products/engage - 我认为它使用OpenID.这可以适用于WIF还是我只是从OpenID创建一个新的SAML令牌并从那时起使用WIF.

我想在这个喋喋不休的结尾,我想回到我开始的地方,因为越来越复杂,我问的问题越多,我考虑的选择就越多.

是否有一个服务层(在WCF上)与不同的非.NET客户端进行通信,这些客户端需要身份上下文和授权如此奇怪?如果你已经建立了这样的东西,你是如何接近它的?

.net architecture wcf soa wif

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

每个需要ORDER BY子句的子查询的Tsql联合

嗨,如果对此的答案是在其他地方我很抱歉.我环顾四周,看不出简单的解决方案.我有一个想要运行的查询.我不关心联合集的顺序,只是内部查询返回正确的数据,即"最大区域".

(SELECT TOP 5 * FROM [geo].[Areas] WHERE CountryID = @CountryID AND (TypeID = 'City')
ORDER BY [ShapeArea] DESC) as BiggestCities
    UNION ALL
(SELECT TOP 5 * FROM [geo].[Areas] WHERE CountryID =  @CountryID AND (TypeID = 'National park')
ORDER BY [ShapeArea] DESC) as BiggestParks
Run Code Online (Sandbox Code Playgroud)

但是T-sql不会让我对子查询有ORDER BY,只对整个联盟...帮助赞赏!我真的不想创建临时表或类似的东西.

sql t-sql sql-server sql-server-2008

16
推荐指数
1
解决办法
7132
查看次数

是否可以在没有LoadUserProfile = True的情况下运行WIF

我正在尝试在共享主机上运行WIF依赖方应用程序.他们不会将IIS设置LoadUserProfile设置为true,因此我收到以下错误:

消息:数据保护操作失败.这可能是由于没有为当前线程的用户上下文加载用户配置文件引起的,这可能是线程模拟时的情况.ExceptionStackTrace:在Microsoft.IdentityModel.Web.ProtectedDataCookieTransform.Encode(Byte [] value)的System.Security.Cryptography.ProtectedData.Protect(Byte [] userData,Byte [] optionalEntropy,DataProtectionScope范围)

有没有办法解决?

iis-7 wif

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

使用DateTime作为主键的SQL Server

您好我的问题类似于:

MySQL:使用DATETIME作为主键

但是我对Sql Server特别感兴趣,我想用一个特定的场景来实际解决这个问题,而不是理论上和另一篇文章一样.

我想存储用户执行的事件/操作.多个用户在相同的100ms间隙中执行动作的几率非常低,并且不经常碰撞是可接受的.如果我可以离散地表达10ms甚至1ms的间隙,那么我对风险非常满意.

因此提出问题,我可以使用DateTime作为我的主键而不是唯一标识符,因为我将定期查询最新的100个事件并按事件发生的时间对事件进行排序.

sql-server database-design sql-server-2008

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

如何使用WIF/SAML令牌/ FedAuth cookie增加会话超时

我认为默认超时是每半小时一次.

我想将此更改为2周.有人有任何想法吗?

这通常是从STS端还是客户端完成的?表单身份验证是否也会妨碍,或者现在无关紧要?

wif

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

MVC3 RTM期货 - 安装Microsoft.Web.Mvc

我正试图为Mvc3 RTM运行期货.从webPI安装mvc3后,没有包含.dll.

我已经下载了源代码,并尝试自己构建它,但是当我将它放入我的解决方案并将名称空间添加到Views文件夹下的web.config时,我在每个页面上都会出现以下错误:

S0012: The type 'System.Web.Mvc.Controller' is defined in an assembly that is not referenced. You must add a reference to assembly 'System.Web.Mvc, Version=3.0.0.0, Culture=neutral, PublicKeyToken=null'.
Run Code Online (Sandbox Code Playgroud)

我想这是因为强烈的命名或沿着这些方向的东西.

我怎样才能开始运行期货?

编辑:

1)我可能错了,但是从内存来看,当你下载并安装了以前版本的MVC时,它会在Program File/Microsoft ASP.NET/Asp .net MVC2下给你一个Microsoft.Web.Mvc .dll.使用WebPI安装,该位置只有System.Web.Mvc.dll.

2)绝对不是在GAC ......它不是这个组装的地方(我也检查过以确保)

3)不工作的项目是目标项目.我创建了一个新的'Asp .net Mvc 3 Application'来运行它以确保它有效(确实如此).然后我添加了对我从Mvc 3源代码构建的程序集的引用,并更改了"Views"文件夹下的web.config.

<system.web.webPages.razor>
<host factoryType="System.Web.Mvc.MvcWebRazorHostFactory, System.Web.Mvc, Version=3.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" />
<pages pageBaseType="System.Web.Mvc.WebViewPage">
  <namespaces>
    <add namespace="System.Web.Mvc" />
    <add namespace="System.Web.Mvc.Ajax" />
    <add namespace="System.Web.Mvc.Html" />
    <add namespace="System.Web.Routing" />
    <add namespace="Microsoft.Web.Mvc" />
  </namespaces>
</pages>
Run Code Online (Sandbox Code Playgroud)

4)一旦我删除了命名空间元素和dll,项目就会再次运行.

asp.net-mvc asp.net-mvc-3

7
推荐指数
1
解决办法
8323
查看次数

IIS的单个Web请求是否保留在单个线程上?

我想编写一个日志记录http模块,该模块在请求执行时为线程本地存储中的单个请求存储日志事件列表.在End_Request上,我想将所有事件写回持久存储.

问题是,一个请求是否与一个线程匹配?即我可以在我的代码中的任何地方假设我可以向IEnumerable添加项目,并且它们将在请求结束时正确地组合在一起.

c# iis thread-safety threadpool

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

公开WCF 4.0 Rest模板服务的元数据

可能遗漏了一些非常基本的东西.我创建了一个WCF 4.0 Rest服务.当我从浏览器访问网址时,它没有问题,我正在回复我想要的东西.

但是现在我想从客户端mvc应用程序中使用该服务(它也将被其他非.net平台使用,这就是为什么它首先是一个休息服务).

问题是如何获得服务引用,以便我可以开始在我的c#代码中使用它?使用新的最小WCF .net 4配置方法并且没有服务契约的接口,我不知道如何指定mex端点.最终,我不想在生产过程中使用mex端点,只是在开发过程中.我希望能够指定我的所有服务(在一个应用程序中大约10个)都有一个端点和一个小的配置,vs2010 .config转换只是在我发布时撕掉了.

wcf wcf-client wcf-rest

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

大型FedAuth Cookie(FedAuth4)仅有7项索赔

我正在努力弄清楚为什么ClaimsPrincipal只有7个声称FedAuth从FAM 产生5个Cookie(FedAuth1,FedAuth2,FedAuth3,FedAuth4).

这会导致问题,因为Safari正在截断我的cookie并且我的mac用户无法登录.

任何想法,为什么我可能会遇到这个或在哪里我可以想出来?

更新:正如Eugenio指出的设置SaveBootstrapTokens = false将cookie从5回缩到2,现在safari用户可以登录.

federated-identity wif

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

WIF STS身份验证后,恢复正常Http

我有一个MVC3网络应用程序,可以自定义StarterSTS的自定义.我要求知道领域和身份验证要求SSL.

它很有效.

问题是当用户回到我们使用https浏览的网站时.这不是我想要的经验.我的网站不是银行或类似的东西.我认为认证对话应该是安全的(我认为)和令牌加密(我敢肯定).但是,如果我在验证后手动将网址从https更改为http,则表示我未获得授权.

1)为什么?

2)是否可以回归http?或者......我是否应该要求https进行身份验证,但保留令牌加密?

ws-security wif

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