C# 检查是否存在任何http查询,而不是通过参数

C# 检查是否存在任何http查询,而不是通过参数,c#,asp.net-mvc,asp.net-mvc-3,razor,webgrid,C#,Asp.net Mvc,Asp.net Mvc 3,Razor,Webgrid,由于MVC3 WebGrid排序默认值是通过查询字符串升序的,&sortdir=ASC。。我想知道最初如何按降序排序 我在下面尝试过使用Request.QueryString,但在绝对没有查询字符串“”的情况下,这不起作用: // Force a descending sort on page load when query string is empty if(Request.QueryString[grid.SortDirectionFieldName].IsEmpty()){ gr

由于MVC3 WebGrid排序默认值是通过查询字符串升序的,&sortdir=ASC。。我想知道最初如何按降序排序

我在下面尝试过使用Request.QueryString,但在绝对没有查询字符串“”的情况下,这不起作用:

// Force a descending sort on page load when query string is empty
if(Request.QueryString[grid.SortDirectionFieldName].IsEmpty()){
    grid.SortDirection = SortDirection.Descending;
}
由于我最初有一个类似于..Admin/Review的路径,而不是../Admin/Review?sort=Question6&sortdir=ASC,我如何测试这个案例?如果没有查询参数,上述条件还会返回true吗


我认为我需要从原始url提取一个查询,如果它不存在,请将我的排序方向设置为降序。

这样行吗?除非querystring变量显式为“ASC”,否则它将默认为降序


这样行吗?除非querystring变量显式为“ASC”,否则它将默认为降序


您可能需要将if语句更改为:

 if( string.IsNullOrEmpty(Request.QueryString[grid.SortDirectionFieldName]) ){
     //sort desc
 }

您可能需要将if语句更改为:

 if( string.IsNullOrEmpty(Request.QueryString[grid.SortDirectionFieldName]) ){
     //sort desc
 }
最终使用了JS:

$(document).ready(function () {
    var ignoreURL = window.location.href.replace('DESC', 'ASC');
    $('#grid th a').each(function () {
        if (this.href.indexOf('ASC') > -1 && this.href != ignoreURL) {
            this.href = this.href.replace('ASC', 'DESC');
        }
    });
});
最终使用了JS:

$(document).ready(function () {
    var ignoreURL = window.location.href.replace('DESC', 'ASC');
    $('#grid th a').each(function () {
        if (this.href.indexOf('ASC') > -1 && this.href != ignoreURL) {
            this.href = this.href.replace('ASC', 'DESC');
        }
    });
});

在第一次排序之后,它仍然是升序排序。如果我改变逻辑说!string.isnullorempty,我是通过降序得到的,但它仍然以相同的方式排序..看起来我需要在某个点后将查询参数更改为DESC在第一次排序之后,它仍然是升序排序。如果我改变逻辑说!string.isnullorempty,我是通过降序得到的,但它仍然以相同的方式排序..看起来我需要在某个点后将查询参数更改为DESC这个逻辑就是web网格最初在单击第一个排序时的工作方式。我想按降序排序,但出于某种原因,查询字符串总是返回ASC。这种逻辑就是web网格最初在单击第一个排序时的工作方式。我想按降序排序,但由于某种原因,查询字符串总是返回ASC