在.NET Core中,不存在无键查询字符串参数的替代方式吗?
在asp.net中,语法为
例如,我需要支持以下格式的url:
该值无键(评论中说应称其为无值,这对于.NET Core来说是合适的,但我看到它们被称为无键用于asp.net,因为您可以使用
更新:下面是我目前使用的代码解决方法。
在asp.net中,语法为
Request.QueryString[ null ]
,然而,.NET Core会抛出null异常,不允许您传递null
作为键名。例如,我需要支持以下格式的url:
http://localhost:54301/RBLeCORS.ashx?{Command:CalcEngineStatus}
但是除此之外,我还需要能够处理通过javascript的$.ajax()
调用发布的命令,其中数据是发布而非放在查询字符串中。该值无键(评论中说应称其为无值,这对于.NET Core来说是合适的,但我看到它们被称为无键用于asp.net,因为您可以使用
null
键来访问)是一个JSON对象,可以比我给出的简单示例更复杂。更新:下面是我目前使用的代码解决方法。
string queryData = null;
if (context.Request.Query.Count == 1 )
{
var firstKey = context.Request.Query.Keys.ElementAt(0);
var firstValue = context.Request.Query[firstKey];
if ( string.IsNullOrEmpty( firstValue ) )
{
queryData = firstKey;
}
}
var command = Request.HasValue ? Request.QueryString.Value.Substring(1) : "{}";
)? - Jason W