PDA

View Full Version : چطور میشه با توجه به یک فیلد خاص از رکورد واکشی شده توسط sqldatasource در gridview متن متفاوتی نشون



j_kashani2003
دوشنبه 24 آبان 1389, 10:50 صبح
سلام
من یه sqldatasource دارم که فیلدهای مختلفی از جدولی واکشی می کنه
مثلاً

SqlDataSource1.SelectCommand = "SELECT [name], [lastname], [age], [ID] FROM [Tblname]

و توی gridview با کد


<asp:Label ID="Label17" runat="server" Text='<%#Eval("age")%>'></asp:Label>

دارم رکوردهای واکشی شده رو نشون می دم
حالا می خوام اگه سن شخص مساوی 5 سال بود توی لیبل بنویسه کودک - برابر 10 بود بنویسه نوجوان و ...

میشه راهنماییم بکنید
البته از دستور زیر استفاده کردم اما ارور میده


<% Dim A As string

havefullpage = SqlDataSource1.SelectParameters.Item("age").ToString
If A="5" Then

Response.Write("کودک")
End If



%>

saeed262626
دوشنبه 24 آبان 1389, 11:15 صبح
سلام
این کار رو باید تو RowDataBound گرید ویو بنویسی

j_kashani2003
دوشنبه 24 آبان 1389, 13:03 عصر
من می خوام تو gridviewداده های sqldatasource رو بخونم اگه مساوی 5 بود مثلاً بشه کودک
در اصل مشکل من اینه که چطوری داده های یک فیلد رو بگیرم تو کد مقایسه کنم و به جاش چیز دیگه ای نشون بدم
مثلاً به جای 1 تو گریدویو بنویسم کودک
یا مثلاً اگه رکورد بعدی 10 بود بنویسم نوجوان و ....

saeed262626
دوشنبه 24 آبان 1389, 20:56 عصر
باید QUERY رو اصلاح کنی به جای AGE این کد رو بنویس


CASE WHEN age = 5 THEN N'کودک'
WHEN age = 10 THEN N'نوجوان'
ELSE N'بزرگسال' END AS AGE

j_kashani2003
سه شنبه 25 آبان 1389, 00:48 صبح
سلامی 2باره به همه به خصوص saeed262626
شاید من سوالم رو خوب مطرح نکردم مشکل من نوشتن این دستورات نیست
مشکل اصلی من این هست که چطوری تو کدنویسی وی بی داده های بازگشتی sqldatasource رو بخونم و تو کدنویسی ازش استفاده کنم مثلاً تو همون توضیحات شما age اصلاً خونده نمیشه فقط میشه با eval اون رو به یه کنترل نسبت داد اما من می خوام اون رو تو کد بخونم و با توجه به مقدار اون تو لیبل گروه بندی سنی رو نشون بدم
مشکل دوم اینکه وقتی تو گریدویو در قسمت <ItemTemplate> یه کنترل مثلاً لیبل میذاریم نام این کنترل تو کدنویسی وی بی ظاهر نمیشه و قابل کدنویسی نیست