Динамический SQL и C#.Net

#c#-3.0

#c #-3.0

Вопрос:

Я использую динамический SQl в своей хранимой процедуре. Во внешнем интерфейсе я использую C#.net просмотр сетки для отображения данных.

В моей таблице есть три поля,

1) Активный бит 2) DateMadeInactive-smallDate 3)Комментарии-Varchar (Максимум)

В зависимости от состояния активного значения я должен отобразить эти три или два поля в gridview.

Если Active= true, то я должен отобразить active и комментарии.

Если Active = false, то я должен указать поля DateMadeInactive и Comments.

Для отображения активного поля я использую следующее

 <asp:TemplateField HeaderText="Comments" SortExpression="Comments" >
                <ItemTemplate>
                    <%#Eval("Comments")%>
                </ItemTemplate>
            </asp:TemplateField>
  

В моей хранимой процедуре я проверяю значение null следующим образом, если оно равно null, то я отображаю как false

 set @SQLQuery = @SQLQuery   ',isnull(Register.Active,''0'')as Active,
  

Кто-нибудь может сказать мне, где мне проверить активное значение или есть ли какой-либо метод в SQL, который проверяет условие True / False для поля.

Я не ожидаю полного ответа, только подсказка…

Спасибо.

Хари

Ответ №1:

Просмотр сетки.Событие RowDataBound — это то, что вы ищете.

При обработке события проверьте значение поля и соответствующим образом покажите или скройте свои элементы управления.

Будьте осторожны: Вы не можете скрыть весь столбец, поскольку это влияет на каждую строку, вы должны показать или скрыть элементы управления внутри столбца.