以下是引发错误的行:
<asp:CheckBox ClientID='<%# Eval("ProviderName") + "@" + Convert.ToString(Container.DataItemIndex) %>' runat="server"
这是我的数据来源:
var patientProviders = (from t in adminDb.tbl_patients_patients_to_providers
join p in adminDb.tbl_patients_providers on t.ProviderId equals p.ProviderId_this
join ps in adminDb.tbl_patients_providers_to_specialties on p.ProviderId_this equals ps.ProviderId
join s in adminDb.tbl_patients_providers_specialties on ps.SpecialtyId equals s.ProviderSpecialtiesId_this
where t.PatientId == patientId
orderby t.PatientToProviderId_this
select new { p.ProviderName, s.ProviderSpecialty, t.ProviderTypeId }).ToList();
ProviderName是一个字符串。
我无法弄清楚为什么输入格式不正确...
答案 0 :(得分:0)
Control.ClientId只有一个&#34; get&#34;所以我认为它是只读的:
- from MSDN -
[BrowsableAttribute(false)]
public virtual string ClientID { get; }
答案 1 :(得分:0)
首先,ClientID是一个reaonly属性。你只有一个吸气剂。
但是如果您想要绑定的表达式有问题,请使用GridView.RowUpdating
事件处理程序,它允许您操作要在代码隐藏中绑定的表达式。(帮助调试问题的方法)