我尝试从数据库下载照片。在数据库中,字段类型是Image。 该ID是类型UniqueIdentifier。 我的代码从数据库c下载照片#
public void ProcessRequest (HttpContext context) {
ConnectTodatabase conection = new ConnectTodatabase();
conection.makeConnection();
// Create SQL Command
SqlCommand cmd = new SqlCommand("Select ID,photo from profile where [email protected]", conection.Connection);
SqlParameter ImageID = new SqlParameter("@ID", System.Data.SqlDbType.UniqueIdentifier);
ImageID.Value = context.Request.QueryString["ID"];
cmd.Parameters.Add(ImageID);
SqlDataReader dReader = cmd.ExecuteReader();
dReader.Read();
context.Response.BinaryWrite((byte[])dReader["photo"]);
dReader.Close();
context.Response.ContentType = "text/plain";
context.Response.Write("test 123456");
}
异常是InvalidCastException。 “无法将参数值从字符串转换为Guid。” 如何传递ImageID到正确的类型? 谢谢!
调用句柄
foreach (DataRow theRow in thisDataSet.Tables["Profile"].Rows)
{
resultCounter++;
double x, y;
x = Convert.ToDouble(theRow["lat"]);
y = Convert.ToDouble(theRow["lng"]);
string id = Convert.ToString(theRow["ID"]);
GLatLng latlng = new GLatLng(x, y);//sintetagmenes shmeiou
//dimiourgia ton 2 ipomenou gia kathe shmeio
GInfoWindowTabs iwTabs = new GInfoWindowTabs();
iwTabs.point = latlng;
System.Collections.Generic.List<GInfoWindowTab> tabs = new System.Collections.Generic.List<GInfoWindowTab>();
tabs.Add(new GInfoWindowTab("Profile Info:", "<table> <tr> <td><b>Name: </b> </td><td>" + theRow["fname"] + "</td></tr><tr><td><b>Lastname: </b></td><td>" + theRow["lname"] + "</td></tr><tr><td><b>Affiliation: </b></td><td>" + theRow["affiliation"] + "</td></tr><tr><td><b>Address: </b></td><td>" + theRow["address"] + "</td></tr><tr><td><b>Country: </b></td><td>" + theRow["country"] + "</td></tr><tr><td><b>Email: </b></td><td>" + theRow["email"] + "</td></tr><tr><td><b>Role: </b></td><td>" + theRow["role"]));
tabs.Add(new GInfoWindowTab("Profile Photo:", "<img src=Handler.ashx?ID=" + theRow["ID"] + "border=1>"));
我有这样的错误: 的Guid应包含32位用4破折号(xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx)。 – Jimmysnn
从ASP.NET配置中创建新用户时,Id通过visual studio自动创建 – Jimmysnn
显示示例ID。需要确保它实际上是一个GUID。 – Jeremy