2017-06-05 149 views
1

ApplicationBuilder.Properties集合的用途是什么?为什么不简单使用HttpContext.ItemsApplicationBuilder.Properties的目的是什么?

我可以想到的唯一的事情就是如果你想将对象从一个中间件传递到另一个中间件,但同样可以轻松使用HttpContext.Items

我想有一个减少范围的参数..如果一个对象只用于中间件,为什么污染HttpContext.Items?回到Owin时代,我们会使用Owin属性,并且可以通过GetOwinContext()获得这些属性,但似乎没有任何与asp.net中间件相同的属性。所以这似乎并没有答案。

我做了一些搜索框架,并找不到在框架本身内使用它的任何东西。我可能错过了一些东西。

任何想法?

回答

0

ApplicationBuilder.Properties的用途是什么?

根据source code on Github

/// <summary> 
/// Gets a key/value collection that can be used to share data between middleware. 
/// </summary> 
IDictionary<string, object> Properties { get; } 

猜测其它任何东西会是主要基于舆论。

+0

啊。我当然应该去源头了。 API文档没有提到这一点。事实上,除了实际签名之外,它没有任何评论。 –

+0

@ErikFunkenbusch,我也先去了docs,没有发现任何解释,所以去看源代码。我从源代码中获取的文档多于*“官方”*文档 – Nkosi