~~با سلام
من برای ارسال تصاویر از header.ashx استفاده کردم
~~SqlConnection con = new SqlConnection();
con.ConnectionString = ConfigurationManager.ConnectionStrings["9dayConnectionString"].ConnectionString; // Create SQL Command SqlCommand cmd = new SqlCommand(); cmd.CommandText = "select id,name,family,t_mah,t_roz,Image from tbl_sabt_student where id=@id AND t_mah='" + a + "'AND t_roz='" + b + "'"; cmd.CommandType = System.Data.CommandType.Text; cmd.Connection = con; SqlParameter ImageID = new SqlParameter("@ID", System.Data.SqlDbType.Int); ImageID.Value = context.Request.QueryString["ID"]; cmd.Parameters.Add(ImageID); con.Open(); SqlDataReader dReader = cmd.ExecuteReader(); dReader.Read(); try { context.Response.BinaryWrite((byte[])dReader["Image"]); } catch (Exception) { //throw; } dReader.Close(); con.Close();
و در صفحه مقصد اینطوری فراخوانی کردم
~~asp:Image ID="Image1" runat="server" ImageUrl='<%# "Handler5.ashx?ID=" + Eval("ID")%>' Width="150" Height="100
حالا اگه بخوام با همین id نامشم ارسال بشه چیکار کنم (وقتی نامشو فراخوانی میکنم اخرین نام لیستو نشون میده نه نامی که مربوط به عکسه)
میتونید به صورت آرایه برگردونید
البته باید در سمت View کدهایی بنویسید که تفکیک کنه مقادیر رو
به نظرم بهتره اینکار را نکنید
پس باید چیکار کنم؟
دلیل استفاده از Generic Handler چیست ؟
من توی کل سایتم از Generic header استفاده کردم ..... توی این صفحه ام برای اینکه عکس یک فرد خاص نمایش داده بشه از این استفاده کردم حالا عکسو که براساس شرط ارسال میکنه و مشکلیم نداره ولی اسمشو اخرین اسم لیست میاره
چرا در Code Behind کد نزدید ؟
تا اونجا که من اطلاع دارم و از کد های شما مشخصه دارید با استفاده از Response.Write تصویر را نمایش میدید که درسته
پلی با این روش دو مقدار نمیشه برگردوند
الان یک سرچ هم کردم ولی نتیجه ای برای برگرداندن دو مقدار پیدا نکردم
آموزشی دارید که بتونم ازش استفاده کنم؟
آموزش برای چه موضوعی ؟
همین کدهای Handler رو در یک رویداد از فرم بنویسید
هیچ کاربری تا کنون از این پست تشکر نکرده است
با ما تماس بگیرید تا در این مسیر همراهتان باشیم :)