2009-05-07 19 views
10

में मैं अपने डेटाबेस में एक तालिका से गतिशील रूप से एक ग्रिडव्यू बाध्यकारी हूं जिसे मैंने "सत्र" कहा है।एएसपीनेट प्रारूपण दिनांक ग्रिडव्यू

var s = from sessions in datacontext.Sessions 
        where sessions.test == id 
        orderby sessions.ID ascending 
        select sessions; 
gridView.DataSource = qsessions; 
gridView.DataBind(); 

सत्र एक datetime क्षेत्र है कि मैं सिर्फ तारीख (महीना/दिन/वर्ष) प्रदर्शित करने के लिए कम से कम करना चाहते हैं: मैं एक विधि से जानकारी एक LINQ क्वेरी कुछ इस तरह है कि का उपयोग कर मिलता है। मैं क्या गूगल खोजों के माध्यम से पढ़ा है से, समाधान की तरह कुछ का उपयोग कर gridview की aspx मार्कअप में स्वरूपण निर्दिष्ट करने के लिए है:

<asp:TextBox ID="txtDate" runat="server" Text='<%# Eval("dateTime", "{0:MM/dd/yyyy}") %>'></asp:TextBox> 

यह काम करने के लिए प्रतीत नहीं होता है और अभी भी तारीख के बाद समय से पता चलता । क्या मुझे कुछ याद आ रही है? बहुत सराहना में मदद करें!

उत्तर

19

प्रयास करें:

<asp:TextBox ID="txtDate" runat="server" Text='<%# Convert.ToDateTime(Eval("dateTime")).ToString("d") %>'></asp:TextBox> 

अधिक स्वरूपण विकल्प के लिए यह उपयोगी साइट देखें:

http://www.mikesdotnetting.com/Article.aspx?ArticleID=23

+0

धन्यवाद सभी । यह पहली कोशिश पर काम किया। दूसरों की कोशिश नहीं की है, इसलिए वे शायद भी काम करते हैं। मैं इसकी सराहना करता हूं! –

+0

टेक्स्ट = '<% # इवल ("डेटटाइम", "{0: डी}")%>' – fubo

0

मुझे लगता है कि आप datetime चर एक स्ट्रिंग के रूप में मूल्यांकन किया जाता है। इसे डेटटाइम पर कास्ट करने का प्रयास करें।

3

ग्रिड में टेक्स्टबॉक्स के लिए ऑनडाटा बाइंडिंग ईवेंट लागू करें।

<asp:TextBox ID="txtDate" runat="server" OnDataBinding="txtDate_DataBinding"> 
</TextBox> 

फिर में अपने कोड के पीछे OnDataBinding घटना को लागू:

protected void txtDate_OnDataBinding(object sender, System.EventArgs e) 
{ 
    TextBox txt = (TextBox)(sender); 
    txt.Text = (DateTime)(Eval("YourDateField")).ToString("MM/dd/yyyy"); 
} 

मैं codebehind और aspx पेज में कुछ भी नहीं में सभी कोड के लिए पसंद करते हैं लेकिन वह आपको वहां भी बैठाना रूप में अच्छी तरह कर सकते हैं।

OnDataBinding vs Inline: pros, cons and overhead

1
<asp:Label ID="lblDateBudget" runat="server" Text='<%# Eval("DateBudget", "{0:MM/d/yyyy}")%>'></asp:Label> 

नमस्ते दोस्तों, यहाँ समस्या है जिसे आप ऊपर को परिभाषित किया है के समाधान का एक और प्रकार है: यहाँ एक धागा के लिए एक लिंक मैं कहाँ का वर्णन कारण है कि मैं codebehind में यह करने के लिए पसंद करते हैं है। आप बस अपनी डेटाटाइप तिथि को समय-समय पर सेट करें और इस तरह से एक्सेस करने का प्रयास करें। मुझे उम्मीद है कि यह आपके लिए उपयोगी होगा।

2

एएसपी gridview ही दिनांक स्वरूप का समर्थन करता है,

DataFormatString="{0:dd-MM-yyyy}" 
2

GridView समर्थन DataFormatString के माध्यम से स्वरूपण तारीख जोड़ने का प्रयास करें। उदाहरण के

<asp:BoundField DataField="Date" HeaderText="Visit date" DataFormatString="{0:dd-MMM-yyyy}" >        
          </asp:BoundField> 

और इस-

यात्रा की तारीख की तरह अपने लुक के लिए
15 अक्टूबर 2013
12 अक्टूबर 2013
11 अक्टूबर 2013

संबंधित मुद्दे