Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/315.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 将对象类型强制转换为像字符串一样提供的类型_C#_.net - Fatal编程技术网

C# 将对象类型强制转换为像字符串一样提供的类型

C# 将对象类型强制转换为像字符串一样提供的类型,c#,.net,C#,.net,是否可以将对象类型转换为像字符串一样提供的类型 我想做一个喜欢的人 public static class WebAPIManager { public static WebAPIManagerItem ApiAccountLogin { get { return new WebAPIManagerItem { Url = "api/Account/Login", Co

是否可以将对象类型转换为像字符串一样提供的类型

我想做一个喜欢的人

 public static class WebAPIManager
    {
        public static WebAPIManagerItem ApiAccountLogin 
        { 
            get 
            {
                return new WebAPIManagerItem { Url = "api/Account/Login", Container = new LoginBindingModel(),  ClassType="LoginBindingModel" }; 
            } 
        }
    }

    public class WebAPIManagerItem 
    {
        public string Url;

        public object Container;

        public string ClassType;

    }
像这样使用它

 var response = await client.PostAsJsonAsync(WebAPIManager.ApiAccountLogin.Url, WebAPIManager.ApiAccountLogin.Container as typeof(WebAPIManager.ApiAccountLogin.ClassType));
我希望你有这个想法

基本上,当我使用
webapimager
时,我希望看到一些通用的东西

伙计们,有什么线索吗?

谢谢大家

就像我得到的我不能做我需要的。。。 所以我重构了代码

  public   class WebAPIManager
    {
        public   ApiAccountLogin ApiAccountLogin(string password, string username)
        {
            return new ApiAccountLogin { Url = "api/Account/Login", Container = new LoginBindingModel() { Password = password, UserName = username } };
        }
    }

    public class ApiAccountLogin
    {
        public string Url;

        public LoginBindingModel Container;

        public ApiAccountLogin(string password, string username)
        {
            Container.Password = password;
            Container.UserName = username;
        }

        public ApiAccountLogin()
        {
        }
    }
用法是

 WebAPIManager apiManager = new WebAPIManager();

   var apiAccountLogin = apiManager.ApiAccountLogin("test01","test01");
                var response = await client.PostAsJsonAsync(apiAccountLogin.Url, apiAccountLogin.Container);

你是说
(webapimager.ApiAccountLogin.ClassType)webapimager.ApiAccountLogin.Container
?@Steven是的!到底有没有可能通过某种方式让这种方法发挥作用?@Steven you can cast to type only-
ClassType
Isstring@ClarkKent:啊。。您的
ClassType
是一个字符串值。强制转换是编译器为您所做的事情,但是
ClassType
的值在运行时会发生变化。因此不可能强制转换这样的东西,因为编译器永远不可能知道类型。@BartoszKP。。我想我需要强制转换它,因为我必须设置类的一些属性。。。coz API方法接受的是具体的类,而不是对象。。。