瞧一瞧DynamicDictionary
原文地址:https://github.com/NancyFx/Nancy/wiki/Taking-a-look-at-the-DynamicDictionary
DynamicDictionary 是字典式动作的动态类型。实际上在它的表面下是大有可为的,它能帮助Nancy在很多提供更加更加简洁的语法。最明显的地方是在lambda表达式中的路径动作形式。任何从请求中捕获的值都会被送入DynamicDictionary然后通过路径传送到动作(action)中去。因为DynamicDictionary,你可以使用标准的索引方式获得或者使用名字,在捕获中,值只是作为一个普通的属性。两者的作用是相同的,使用什么方式,取决于你的喜好。
Get["/hello/{name}"] = parameters => {
return "Hello " + parameters.name;
};
Get["/goodbye/{name}"] = parameters => {
return "Goodbye " + parameters["name"];
};
值得注意的是,如果你希望通过一个普通的属性访问一个属性时,你必须确保你的捕获组有一个有效的C#标识符。(比如:以一个字符字母开头。)
。被存储起来的值都会被明显或者不明显的转化为最原始的类型,HasValue这个特殊的属性可以用来检查一个值是否已经被分配,这些值都实现了IEquatable<> 和IEquatable<> 接口。
DynamicDictionary作为Nancy框架中的动态类型字典,简化了语法并提升了路径动作的灵活性。通过lambda表达式,它可以轻松地将请求参数传递给动作处理函数。
1158

被折叠的 条评论
为什么被折叠?



