我的 ApiController HttpGet 操作的第一行是这个
var returnOnlyDefault = (Request.GetQueryNameValuePairs()
.Any(kv => ((kv.Key.ToLower() == "defaultview") && (kv.Value.ToLower() == "true"))));
这将查找“defaultview”的查询字符串值。代码“有效”,但我在对其进行单元测试时遇到了麻烦。
在我的单元测试中,我正在执行以下操作
var controller = new Controllers.ViewsController { Request = new HttpRequestMessage() };
controller.Request.Properties.Add(new KeyValuePair<string, object>("defaultview", "true"));
请求uri当然是空的。测试失败,因为它没有获取查询字符串值。