嗨,我有这种情况。
我必须通过调用Web方法在UI中填充2个标签和1个下拉列表。
由于该函数是静态的,我无法从Web方法中访问页面元素(标签和下拉列表)。所以我试图返回我想要的HTML。
[WebMethod()]
public static object[] GetStatus()
{
//Return text for Label1;
//Return text for Label2;
//Return items to display in ListBox [Number of items can vary]
}
我认为对象[]可能有用..但这是处理这种情况的最佳方法吗?还要考虑设置这些控件的值所需的java脚本代码(在调用web方法之后),这种情况下的最佳实践是什么?
答案 0 :(得分:6)
创建一个ViewModel类。
public class StatusViewModel
{
public string Label1 { get; set; }
public string Label2 { get; set; }
public IDictionary<string, string> ListBox { get; set; }
}
[WebMethod()]
public static StatusViewModel GetStatus()
{
// do work
return new StatusViewMode....
}
答案 1 :(得分:3)
string[]
怎么样?你试过了吗?
答案 2 :(得分:2)
创建一个复合对象并返回该对象。
public class combinedObject{
public string Labe11;
public string Label2;
..
}
答案 3 :(得分:1)
创建包含匹配属性的自定义对象。然后编写自定义序列化以序列化和反序列化。