এএসপি.নেট রিপিটার বাইন্ড লিস্ট <স্ট্রিং>


102

আমি List<string>একটি পুনরাবৃত্তকারী নিয়ন্ত্রণের সাথে আবদ্ধ করছি । এখন আমি Evalফাংশনটি ItemTemplateপছন্দ মতো সামগ্রীগুলি প্রদর্শন করতে চাই

<%# Eval("NAME") %>.  

তবে আমি নিশ্চিত নন যে NAME এর পরিবর্তে আমার কী ব্যবহার করা উচিত।

উত্তর:


212

শুধু ব্যবহার <%# Container.DataItem.ToString() %>

যদি আপনি নাল মান সম্পর্কে উদ্বিগ্ন হন তবে আপনি এটি (। নেট 6+) এর রিফ্যাক্টর করতে চাইতে পারেন

<asp:Repeater ID="repeater" runat="server">
    <ItemTemplate>
        <%# Container.DataItem?.ToString() ?? string.Empty%>
    </ItemTemplate>
</asp:Repeater>

আপনি যদি নেট নেট 6 এর চেয়ে কম ব্যবহার করছেন তবে দ্রষ্টব্য আপনি নাল-কন্ডিশনাল অপারেটর কনটেইনার ব্যবহার করতে পারবেন না ata ডেটা আইটেম?



10
rptSample.DataSource = from c in lstSample select new { NAME = c };

রিপিটারে আপনি রেখেছেন

<%# Eval("NAME") %>

2
কিছু উদাহরণ কেবল ইভাল ব্যবহারের পরিবর্তে <% # ডেটাবাইন্ডার.এভাল (ধারক.ডাটা আইটেম, "NAME")%> ব্যবহার করে। পার্থক্য কি?
ম্যাথু লক


3

@ রবার্তোবিআর দ্বারা সরবরাহিত লাইনকিউ ভিত্তিক আরও একটি সম্পূর্ণ উদাহরণ:

পিছনে কোডে:

List<string> notes = new List<string>();
notes.Add("Value1")
notes.Add("Value2")

repeaterControl1.DataSource = from c in notes select new {NAME = c};
repeaterControl1.DataBind();

পৃষ্ঠার উপর:

   <asp:Repeater ID="repeaterControl1" runat="server" >
    <ItemTemplate>
        <li><%# Eval("NAME")  %></li>
    </ItemTemplate>
    </asp:Repeater>

3

আপনাকে এখানে ডেটাবাইন্ড সিনট্যাক্স ব্যবহার করতে হবে বা এটি কাজ করবে না।

<%# this.GetDataItem().ToString() %>

0

ভিতরে আইটেম টেম্পলেট

     <ItemTemplate>
 <asp:Label ID="lblName"  runat="server" Text='<%# Eval("YourEntityName").ToString() ==""? "NA" : Eval("YourEntityName").ToString()%>'></asp:Label>
    <ItemTemplate>

বা আইটেম টেম্পলেট ভিতরে কেবল যুক্ত করুন

<%# Eval("YourEntityName").ToString() ==""? "NA" : Eval("YourEntityName").ToString()%>
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.