2016-02-01 3 views
0

Я выполняю следующий запрос и пытаюсь использовать код, полученный из предыдущего запроса. Но приносит мне следующую ошибку: тег сервера не очень хорошо сформирован.Тег сервера не очень хорошо сформирован asp.net C#

<asp:SqlDataSource ID="SqlDataSource3" runat="server" ConnectionString="<%$ ConnectionStrings:TesteConnectionString %>" SelectCommand="SELECT * FROM [Equipa] where idAssemb=1 and idDept=<%# Eval("idDept") %>"></asp:SqlDataSource> 

Я использую C# в ASP.NET Web Forms,

Может кто-нибудь помочь мне в этом?

+0

Форма, откуда поступает параметр 'idDept'? –

ответ

1

Eval Используется в Элементы управления DataBound для оценки значения поля в строке из источника данных. Вы пытаетесь использовать его внутри самого элемента управления источником данных (SQLDataSource в этом случае). Вы должны использовать parameterized query, указав значение параметра внутри SelectParameters тега, как это: -

<asp:SqlDataSource ID="SqlDataSource3" runat="server" 
    ConnectionString="<%$ ConnectionStrings:TesteConnectionString %>" 
    SelectCommand="SELECT * FROM [Equipa] where idAssemb=1 AND [email protected]d> 
    <SelectParameters> 
     <asp:ControlParameter ControlID="lblDeptId" Name="DeptId" 
      PropertyName="Text" Type="Int32" /> 
    </SelectParameters> 
</asp:SqlDataSource> 

Пожалуйста, обратите внимание, что здесь я показал пример управления настоящим внутри WebForm. Вы можете указать, где значение DeptId происходит через Cookie, QueryString, Form, Session и т. Д.

+0

Спасибо Рахул, он отлично работает –

+0

@CarlosSantos - Добро пожаловать. Вы можете принять ответ, если он вам поможет. http://meta.stackexchange.com/questions/5234/how-does-accepting-an-answer-work –

Смежные вопросы