Asp.net 数据绑定到子对象声明性语法?
数据绑定到复杂“对象”的格式是什么?我有一个linq到sql类,它具有包含,即object.containedobject 我想引用声明性的子对象字段 所以我尝试了我的MySubField.MyBasicProperty,但没有成功,还有MySubField\u MyBasicPropertyAsp.net 数据绑定到子对象声明性语法?,asp.net,linq-to-sql,data-binding,Asp.net,Linq To Sql,Data Binding,数据绑定到复杂“对象”的格式是什么?我有一个linq到sql类,它具有包含,即object.containedobject 我想引用声明性的子对象字段 所以我尝试了我的MySubField.MyBasicProperty,但没有成功,还有MySubField\u MyBasicProperty 谢谢你的帮助 我找到了答案,这是boundfield类的问题,而不是数据绑定 我找到了答案,这是boundfield类的问题,而不是数据绑定 我找到了解决方案,并为以后的任何人分享 您需要重写object
谢谢你的帮助 我找到了答案,这是boundfield类的问题,而不是数据绑定
我找到了答案,这是boundfield类的问题,而不是数据绑定
我找到了解决方案,并为以后的任何人分享 您需要重写objectdatasource更新方法以替换参数名称。只有在未设置objectdatasource的ObjectTypeName属性或它们将是只读的情况下,才可能执行此操作 以下是我的例子:
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);
}
}
我找到了解决方案,并与未来的任何人分享 您需要重写objectdatasource更新方法以替换参数名称。只有在未设置objectdatasource的ObjectTypeName属性或它们将是只读的情况下,才可能执行此操作 以下是我的例子:
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);
}
}
这引入了另一个问题,即更新不再有效。建议?这引入了另一个问题,即更新不再有效。建议?还有一件事,不应该修改foreach中的集合,这样应该是固定的。还有一件事,不应该修改foreach中的集合,这样应该是固定的。