拆箱对象

时间:2013-05-19 19:17:14

标签: asp.net json webforms deserialization

我有一个接受对象的web方法

[WebMethod]
public static void GetObject(object data)
{

}

另外,我有两个班级:

class ConnectionString
{
    public string ConnectionString { get; set; }

    public DatabaseType DatabaseType { get; set; }
}

class Path
{
    public string Path { get; set; }

    public bool IsNetwork { get; set; }
}

在客户端,使用javascript,我也定义了两个类似的类:

function ConnectionString() {
    this.ConnectionString = '';
    this.DatabaseType = 0;
};

function Path() {
    this.Path = '';
    this.IsNetwork = false;
};

现在,根据用户的决定,他可以选择创建登录数据库或文件系统。当我向方法发送数据时,我的对象结果为null。如果我创建方法 对于每个对象,它都有效。有没有办法从OBJECT类型拆箱或绝望?

1 个答案:

答案 0 :(得分:0)

您需要创建两个方法重载,每个重载都包含一个可能的类。在当前实现中,引擎不知道应该在WSDL中放置哪些类......

如果您使用的是WCF,则可以使用[KnownType]属性指定您的方法支持的类。