2010-03-09 48 views
2

数据绑定到一个复杂的“对象”的格式是什么?我有一个LINQ到包含的sql类,即object.containedobject。数据绑定到子对象声明性语法?

我想引用声明的子对象字段。

所以我试过我的MySubField.MyBasicProperty,并没有工作,以及MySubField_MyBasicProperty。

感谢您的帮助!

回答

0

我找到了解决方案,并分享的人谁在未来后我来了。

您需要重写objectdatasource更新方法以替换参数名称。这只有在objectdatasource的objectypename属性没有设置时才有可能,否则它们将是只读的。

这是我的例子:

protected void ObjectDataSource1_Updating(object sender, ObjectDataSourceMethodEventArgs e) 
    { 
     foreach (string currentKey in e.InputParameters.Keys) 
     { 
      if (currentKey.Contains(".")) 
      { 
       string newKey = currentKey.Replace(".", "_"); 
       object myValue = null; 

       if (e.InputParameters[currentKey] != null) 
        myValue = e.InputParameters[newKey]; 
       if (e.InputParameters.Contains(newKey)) 
        e.InputParameters.Remove(newKey); 

       e.InputParameters.Add(newKey, myValue); 
       e.InputParameters.Remove(currentKey); 

      } 
     } 
+0

另一件事,不应该修改foreach中的集合,以便修复。 – 2010-03-12 14:46:18