Affichage dans une gridview avec des objets liés
Bonjour tout le monde
Je souhaite afficher dans ma gridview les informations de ma liste.
J'ai un objet A qui est relier avec un objetB
exemple
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23
|
public class A
{
public A()
{
}
private long id;
public virtual long Id
{
get { return id; }
set { id = value; }
}
private B b;
public B b
{
get { return b; }
set { b = value; }
} |
J'ai une liste qui contient des objets de type A.
Ma liste s'affiche très bien lorsque l'objet B ne pointe pas à null, mais dès qu'il pointe à null, ca me génère une exception, par conséquent je veut faire un test pour savoir si l'objet point ou non à null, car il est possible que l'objet B pointe à null
Voici mon code actuel:
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
|
<asp:GridView ID="GridView1" runat="server" Style="border-color: black; left: 102px;
position: absolute; top: 258px; z-index: 109; width: 434px;" CellPadding="4"
ForeColor="#333333" GridLines="Vertical" AutoGenerateColumns="False" EnableTheming="True"
BorderColor="Black" BorderWidth="1px" OnRowDataBound="GridView1_RowDataBound1">
<RowStyle BorderColor="Black" BorderWidth="1px" />
<Columns>
<asp:TemplateField HeaderText="Valeur objet B">
<ItemTemplate>
<%# ((A)Container.DataItem).B.Valeur %>
</ItemTemplate>
</asp:TemplateField>
</Columns> |
J'ai testé ceci :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
|
<Columns>
<asp:TemplateField HeaderText="Valeur objet B">
<ItemTemplate>
<%#
if (((A)Container.DataItem).B!=null)
{
((A)Container.DataItem).B.Valeur
}
%>
</ItemTemplate>
</asp:TemplateField>
</Columns> |
Mais ceci ne fonctionne, il ne compile pas, il ne veut pas de if.
Je vous remercie de votre aide