我从WCF呈现一个List,客户端收到DocTypes []。没问题。
目前的情况是客户端我只接受100个DocType中的1,2个。什么是将[100]浓缩为仅2?
的最佳方法我有这个代码用于标记用户检查网格的内容。
foreach (GridViewRow rowItem in gvDocTypes.Rows)
{
chk = (CheckBox)(rowItem.Cells[0].FindControl("chk1"));
if (chk.Checked)
DFO[y].Process = true;
y++;
}
这是数据收集的架构:
[System.NonSerializedAttribute()]
private System.Runtime.Serialization.ExtensionDataObject extensionDataField;
private int DocTypeGroupField;
private System.Guid DocTypeIDField;
private string DocTypeNameField;
private int DocTypeNumberField;
private string ErrorMsgField;
private bool ProcessField;
我认为最佳实践是命名此对象的克隆,并在我的迭代中通过网格添加。我只是不能在新阵列中得到我的起点?
试过这个:
Service.DocTypes dfo = new Service.DocTypes() ;
Service.DocTypes[] DFO = (Service.DocTypes[])Session["oDocTypes"];
Service.DocTypes[] oDFO = DFO.Clone();
我错过了什么?
TIA
斯蒂芬
答案 0 :(得分:2)
如果您使用添加服务引用为您创建服务代理,则可以定义应生成哪种类型的集合。默认为System.Array,但您可以选择System.Collections.Generic.List。
最好的问候,拉迪斯拉夫
答案 1 :(得分:0)
在Visual Studio中,右键单击“服务引用”下的添加引用,然后选择“配置服务引用”。将“Collection Type”从“System.Array”更改为“System.Collections.Generic.List”,然后您就可以将它们视为来自客户端的列表。