'<%#Eval("item") %>' 사용; Null 값 처리 및 0 표시
데이터 항목이Null
보여드리고 싶습니다.0
<asp:Label ID="Label18" Text='<%# Eval("item") %>' runat="server"></asp:Label>
어떻게 하면 이 일을 해낼 수 있을까요?
또한 페이지에서 공용 메소드를 만든 다음 코드인프론트에서 이 메소드를 호출할 수 있습니다.
예: C#을 사용하는 경우:
public string ProcessMyDataItem(object myValue)
{
if (myValue == null)
{
return "0 value";
}
return myValue.ToString();
}
그러면 코드인프론트의 레이블은 다음과 같습니다.
<asp:Label ID="Label18" Text='<%# ProcessMyDataItem(Eval("item")) %>' runat="server"></asp:Label>
죄송합니다. 이 코드를 테스트하지 않았기 때문에 "의 구문을 알 수 없습니다.<%# ProcessMyDataItem(Eval("item")) %>
전적으로 옳은
문자열 값에 사용합니다.
<%#(String.IsNullOrEmpty(Eval("Data").ToString()) ? "0" : Eval("Data"))%>
null 가능한 값에 대해서도 다음을 사용할 수 있습니다.
<%#(Eval("Data") == null ? "0" : Eval("Data"))%>
또한 .net 4.5 이상을 사용하는 경우 강력한 형식의 데이터 바인딩을 사용하는 것이 좋습니다.
<asp:Repeater runat="server" DataSourceID="odsUsers" ItemType="Entity.User">
<ItemTemplate>
<%# Item.Title %>
</ItemTemplate>
</asp:Repeater>
저는 VB를 위해 다음을 사용합니다.네트:
<%# If(Eval("item").ToString() Is DBNull.Value, "0 value", Eval("item")) %>
그것도 작동할 것입니다.
Eval("item") == null?"0": Eval("item");
또한 (x = Eval("항목") ?을 사용할 수 있습니까?이 경우에는
http://msdn.microsoft.com/en-us/library/ms173224.aspx
저는 ASP를 모릅니다.NET은 아주 잘하지만, 당신은 3성 연산자를 사용할 수 있습니까?
http://en.wikipedia.org/wiki/Ternary_operation
다음과 같은 것: (x=Eval("항목")) == Null ? 0 : x
IIF를 사용합니다.
<asp:Label ID="Label18" Text='<%# IIF(Eval("item") Is DBNull.Value,"0", Eval("item") %>'
runat="server"></asp:Label>
이 코드를 사용해 보십시오. 유용할 수 있습니다.
<%# ((DataBinder.Eval(Container.DataItem,"ImageFilename").ToString()=="") ? "" :"<a
href="+DataBinder.Eval(Container.DataItem, "link")+"><img
src='/Images/Products/"+DataBinder.Eval(Container.DataItem,
"ImageFilename")+"' border='0' /></a>")%>
Jason의 답변의 수정된 버전 사용:
public string ProcessMyDataItem(object myValue)
{
if (myValue.ToString().Length < 1)
{
return "0 value";
}
return myValue.ToString();
}
교체 시도<%# Eval("item") %>
와 함께<%# If(Eval("item"), "0 value") %>
(또는)<%# Eval("item") ?? "0 value" %>
C#)를 사용합니다.
나는 이 코드를 시도해 보았는데, 이것은 null과 빈 상황 모두에 잘 작동합니다.
'<%# (Eval("item")=="" || Eval("item")==null) ? "0" : Eval("item")%>'
특히 값이 부울 값인 경우 VB.net 에 대해 다음을 사용할 수 있습니다.
<%# IIf(Eval("mydata").Equals(DBNull.Value), 0, Eval("mydata"))%>
예를 들어 인라인 IIF eval을 사용하여 확인란을 자동으로 선택하거나 선택 취소합니다.
<asp:CheckBox ID="mycheckbox" runat="server" Checked='<%# IIf(Eval("mydata").Equals(DBNull.Value), 0, Eval("mydata"))%>' />
를 사용하는 다른 방법.ToString에서 DBnull을 부울로 변환하는 중 오류가 발생합니다.
언급URL : https://stackoverflow.com/questions/1979806/using-evalitem-handling-null-value-and-showing-0-against
'itsource' 카테고리의 다른 글
Ajax 호출을 사용한 PHP Excel 다운로드 (0) | 2023.08.20 |
---|---|
Angular2 - 구성 요소 로드에 텍스트 상자 초점 맞추기 (0) | 2023.08.20 |
Java가 클래스 경로를 무시합니다. (0) | 2023.08.20 |
윈도우즈 Powershell $profile이 실제 경로를 표시하지 않음 (0) | 2023.08.20 |
Oracle Connection.ORA-12541 TNS 수신기가 없습니다. (0) | 2023.08.20 |