PDA

View Full Version : سوال: چه طوری مقدار queryString رو در قسمت where دیتاسورس بزارم؟



طبیب دل
یک شنبه 13 اسفند 1391, 15:10 عصر
با سلام به دوستان
چه طوری مقدار queryString رو در قسمت where دیتاسورس بزارم؟
با تشکر

mohammad973
یک شنبه 13 اسفند 1391, 15:41 عصر
با دستور زیر بهش دسترسی داری :


Request.QueryString["field-name"]

طبیب دل
یک شنبه 13 اسفند 1391, 15:56 عصر
با دستور زیر بهش دسترسی داری :


Request.QueryString["field-name"]

من می خوام کدش تو source html بنویسم الان این رو دارم

<asp:SqlDataSource ID="SqlDataSource1" runat="server" ConnectionString="<%$ ConnectionStrings:ConnectionString %>"
SelectCommand="SELECT * FROM [tbComent] WHERE ([idNews] = @idNews)">
<SelectParameters>
<asp:QueryStringParameter Name="idNews" QueryStringField="idNews"
Type="Int32" />
</SelectParameters>

</asp:SqlDataSource>

mohammad973
یک شنبه 13 اسفند 1391, 16:06 عصر
ببین این جواب میده ؟


<asp:Label ID="Label1" runat="server" Text='<%# Request.QueryString["idNews"].ToString() %>'></asp:Label>

طبیب دل
یک شنبه 13 اسفند 1391, 16:42 عصر
ببین این جواب میده ؟


<asp:Label ID="Label1" runat="server" Text='<%# Request.QueryString["idNews"].ToString() %>'></asp:Label>

ببینید من می خوام دستور selectCommand اس کیو ال دیتاسورس با مقدار فیلد idNews تو قسمت where کارکنه و دو تافیلد nameUser و textComent رو تو لیبل ها نمایش بدم.

mohammad973
یک شنبه 13 اسفند 1391, 17:57 عصر
این یه نمونه پیش نهادی : توی صفحه ای که میخوای اطلاعاتتو نشون بدی ، در Page_lode ش اینو بنویس :


if (!string.IsNullOrEmpty(Request.QueryString["idNews "]))
{
string KeyStr = Request.QueryString["idNews "];
SqlConnection conn = new SqlConnection("Data Source=MOHAMMAD-PC\\MOHAMMADMSSERVER;Initial Catalog=h3rd_DB;Integrated Security=True");
SqlDataAdapter sda = new SqlDataAdapter("Select * from [News] where [idNews ]=" + KeyStr, conn);
DataSet ds = new DataSet();
sda.Fill(ds);
Lable1.Text = ds.Tables[0].Rows[0]["News_titr"].ToString();
Lable2.Text = ds.Tables[0].Rows[0]["News_contenet"].ToString();

mohammad973
یک شنبه 13 اسفند 1391, 17:59 عصر
توی این مثال فرض کن جدولی داری با 3تا ستون idNews و News_titr و News_contenet . با این کار مقادیر خونده میشه و توی دوتا لیبل ای که توی صفحه گذاشته شده نمایش داده میشه .

bftarane
یک شنبه 13 اسفند 1391, 18:02 عصر
من هم اومدم با FormView امتحان کردم به شکل زير و جواب داد

<asp:SqlDataSource ID="SqlDataSource1" runat="server"
ConnectionString="Data Source=.;Initial Catalog=vo;Integrated Security=True"
ProviderName="System.Data.SqlClient"
SelectCommand="SELECT * FROM [tbl_news] WHERE ([NewsID] = @NewsID)">
<SelectParameters>
<asp:QueryStringParameter Name="NewsID" QueryStringField="id" Type="Int32" />
</SelectParameters>
</asp:SqlDataSource>

<asp:FormView ID="FormView1" runat="server" DataSourceID="SqlDataSource1">

<ItemTemplate>
<asp:Label ID="Label1" runat="server" Text='<%#Eval("Abstract") %>'></asp:Label>
<br />


<asp:Label ID="Label2" runat="server" Text='<%#Eval("AddDate") %>'></asp:Label></ItemTemplate>
</asp:FormView>
براي تست اين رو در آدرس بار نوشتم http://localhost:12354/voniv/Default2.aspx?id=51