How to create extension methods for Types

前端 未结 4 1808
名媛妹妹
名媛妹妹 2020-12-20 11:13

I am writing an extension method for parsing JSON string for any given type. I wanted to use the method on types instead of instances like many examples we already know, but

4条回答
  •  孤城傲影
    2020-12-20 12:03

    As stated in the accepted answer, you can't. However, provided that you have an extension method that can be called from an instance of T:

    public static T ParseJson(this T t, string s)
    

    You could write a utility method like this:

    public static T ParseJson(string s)
        where T: new()
        => new(T).ParseJson(s);
    

    And call it like this:

    var t = Utilities.ParseJson(s);
    

    I am afraid that's the best you can do...

提交回复
热议问题