相关疑难解决方法(0)

如何使用ASP.NET Core从查询字符串中读取值?

我正在使用ASP.NET Core MVC构建一个RESTful API,我想使用查询字符串参数来指定返回集合的资源上的过滤和分页.

在这种情况下,我需要读取查询字符串中传递的值来过滤并选择要返回的结果.

我已经发现控制器Get操作内部访问HttpContext.Request.Query返回一个IQueryCollection.

问题是我不知道如何使用它来检索值.事实上,我认为要做的方法是使用,例如

string page = HttpContext.Request.Query["page"]
Run Code Online (Sandbox Code Playgroud)

问题是HttpContext.Request.Query["page"]不返回字符串,而是返回StringValues.

无论如何,如何使用它IQueryCollection来实际读取查询字符串值?

c# http query-string .net-core asp.net-core

102
推荐指数
9
解决办法
14万
查看次数

更多关于C#中的隐式转换运算符和接口(再次)

好的.我已经读过这篇文章了,我对它如何适用于我的例子感到困惑(下图).

class Foo
{
    public static implicit operator Foo(IFooCompatible fooLike)
    {
        return fooLike.ToFoo();
    }
}

interface IFooCompatible
{
    Foo ToFoo();
    void FromFoo(Foo foo);
}

class Bar : IFooCompatible
{
    public Foo ToFoo()
    {
        return new Foo();   
    }

    public void FromFoo(Foo foo)
    {
    }
}

class Program
{
    static void Main(string[] args)
    {
        Foo foo = new Bar();
        // should be the same as:
        // var foo = (new Bar()).ToFoo();
    }
}
Run Code Online (Sandbox Code Playgroud)

我已经彻底阅读了我链接的帖子.我已阅读C#4规范的第10.10.3节.给出的所有示例都涉及泛型和继承,而上述情况则不然.

任何人都可以解释为什么在这个例子的上下文中不允许这样做

请不要以"因为规范说明"或仅引用规范的形式发布帖子.显然,规范不足以让我理解,否则我不会发布这个问题. …

c# interface implicit-conversion

23
推荐指数
3
解决办法
7747
查看次数