今日、クライアントのプロジェクトの1つに取り組んでいるときに、解決策を見つけられない問題を思いつきました。だから私はあなたたちにそれを投げています。
データバインドされたGridViewコントロールを使用しています。同じもののSqlDataSourceのコードは次のとおりです。
<asp:SqlDataSource ID="SqlDataSource_familyMembers" runat="server"
ConnectionString="<%$ ConnectionStrings:VBAT_dbConnectionString %>"
SelectCommand="
select
a.memberid,a.fristName,a.lastname,a.gender,a.dob,
b.relation as [Relation with Family Head],
c.districtname,d.statename,e.countryname,a.mobno,f.occupation,a.ismaried
from
family_members_info as a
left outer join
master_relations as b
on
a.RelationWithFamilyHead=b.relationid
join
master_district as c
on
a.cadistrict=c.districtid
join
master_state as d
on
a.castate=d.stateid
join
master_country as e
on
a.cacountry=e.countryid
join
master_occupation as f
on
a.occupation=f.occupationid
where
familyid=@familyid"
UpdateCommand="
update
family_members_info
set
firstName=@firstname, lastname=@lastName, dob=@dob,
relationwithfamilyhead=@relationwithfamilyhead,cadistrict=@cadistrict,
castate=@castate, cacountry=@cacountry,mobno=@mobno,occupation=@occupation
where
memberID=@memberID">
<SelectParameters>
<asp:ControlParameter ControlID="HiddenField1" Name="familyid" PropertyName="Value" />
</SelectParameters>
<UpdateParameters>
<asp:Parameter Name="firstname" />
<asp:Parameter Name="lastName" />
<asp:Parameter Name="dob" />
<asp:Parameter Name="relationwithfamilyhead" />
<asp:Parameter Name="cadistrict" />
<asp:Parameter Name="castate" />
<asp:Parameter Name="cacountry" />
<asp:Parameter Name="mobno" />
<asp:Parameter Name="occupation" />
<asp:Parameter Name="memberID" />
</UpdateParameters>
</asp:SqlDataSource>
Selectクエリからわかるように、データはいくつかの関連するテーブルからのものであり、ユーザーがデータを編集する場合を除いて、すべてが正常に機能します。
すべての列について、デフォルトでは、GridViewはテキストボックスを表示しますが、外部キーである列のDropdownListを表示する必要があります。
誰かが私にこれに対する可能な解決策を導くことができれば、私は大きな助けになるでしょう。