我有两个Webform页面,一个用于读取二进制图像(binaryImage.aspx),第二个用于显示流程图的主页(OrgChart.aspx),我关心的是将参数传递给url以在其中显示图像根据ID的流程图,在Web表单(orgchart.aspx)中,我将URL分配给变量img。 这是我的源代码: Orgchart.aspx
protected void Page_Load(object sender, EventArgs e)
{
ReadData();
}
[WebMethod()]
public static List<NodeModel> ReadData()
{
SqlConnection conn = new SqlConnection("Data Source=LAPTOP-M7TNSO38\\SQLEXPRESS;Initial Catalog=DEMO;Integrated Security=True");
// SqlConnection conn = new SqlConnection("Data Source=OUMAIMA-PC\\SQLEXPRESS;Initial Catalog=AGIRH;Integrated Security=True");
string query = @"SELECT
u.UO, u.UO_RATTACHEMENT, a.MATRICULE,
a.NOM, a.PRENOM, p.PHOTO, u.POSTE
FROM
UNITE_ORG u, PHOTO p,AGENT a
where
a.MATRICULE = u.RESPONSABLE AND p.MATRICULE= a.MATRICULE ";
List<NodeModel> list = new List<NodeModel>();
SqlCommand cmd = new SqlCommand(query, conn);
conn.Open();
SqlDataReader dataReader = cmd.ExecuteReader();
while (dataReader.Read())
{
list.Add(new NodeModel
{
id = dataReader.GetValue(0).ToString(),
pid = dataReader.GetValue(1).ToString(),
//responsable = dataReader.GetValue(1).ToString(),
matricule = dataReader.GetValue(2).ToString(),
nom = dataReader.GetValue(3).ToString(),
prenom = dataReader.GetValue(4).ToString(),
img= "https://localhost:44338/Scripts/imgBinaire.aspx?matricule="+ dataReader.GetValue(2).ToString(),
//img = dataReader.GetValue(4).ToString(),
//img = "C:/Users/samsung/Desktop/téléchargement.jpg",
poste = dataReader.GetValue(6).ToString(),
});
}
dataReader.Close();
conn.Close();
return list;
}
}
binaryImage.aspx
protected void Page_Load(object sender, EventArgs e)
{
string matricule = Request.QueryString["matricule"];
SqlConnection conn = new SqlConnection("Data Source=LAPTOP-M7TNSO38\\SQLEXPRESS;Initial Catalog=DEMO;Integrated Security=True");
// SqlConnection conn = new SqlConnection("Data Source=OUMAIMA-PC\\SQLEXPRESS;Initial Catalog=AGIRH;Integrated Security=True");
string query = @"select p.PHOTO, a.MATRICULE, u.UO from PHOTO p, AGENT a, UNITE_ORG u
where a.MATRICULE = u.RESPONSABLE AND p.MATRICULE= a.MATRICULE ";
//List <NodeModel> list = new List<NodeModel>();
SqlCommand cmd = new SqlCommand(query, conn);
conn.Open();
SqlDataReader dataReader = cmd.ExecuteReader();
if (dataReader.HasRows)
{
while (dataReader.Read())
{
if (!Convert.IsDBNull(dataReader["PHOTO"]))
{
byte[] imag = (byte[])dataReader["PHOTO"];
Response.BinaryWrite(imag);
}
}
}
dataReader.Close();
conn.Close();
}
}