我需要将图像值传递给函数,但我不知道应该使用哪种数据类型? 我非常感谢你的回答...
典型的功能如下:
void UserInfo(string userName, string userEmail,((image type? )) userImagel)
{
// code here
}
我成功登录后使用Twitter API。我想使用函数将用户信息保存在数据库中。因此,他们可以将他们的个人资料信息从Twitter导入我们的网站。
Default.aspx中的有一行代码如下:
<img src="<%=profileImage%>" />
在Default.aspx.cs中的我使用了
public string profileImage="";
.
.
.
profileImage = Convert.ToString(o["profile_image_url"]);
因此,通过使用这种方式,个人资料图片将显示在网页上。很明显它是一个链接(URL)。现在,如何从我的数据库中的该URL保存该图像?以及如何在函数中传递其值?
最好的问候
答案 0 :(得分:2)
怎么样:
void UserInfo(string userName, string userEmail, System.Drawing.Image userImagel)
{
// code here
}
答案 1 :(得分:2)
通常,我会避免将图像二进制文件存储在数据库中,除非有特殊原因这样做。在任何情况下,正如您所描述的那样,您还没有图像,您有图像的URL:
private void UserInfo(string userName, string userEmail, string imageURL);
问题是,如何处理图像。
如果您想获取实际图片,可以使用System.Net.WebClient
下载,例如:
private void UserInfo(string userName, string userEmail, string imageURL)
{
WebClient client = new WebClient();
byte[] imgData = client.DownloadData(imageURL);
// store imgData in database (code depends on what API you're
// using to access the DB
}
但是,有更多可能和可扩展的方案:
您可以将图像的URL存储在数据库中,并在网页中使用它,让Twitter为图像提供服务(节省带宽)。
您可以下载图像(如上所示),然后将其存储在Web服务器的硬盘而不是数据库中。这样,图像请求可以由Web服务器而不是数据库处理,如果您的服务增长(缓存,CDN,......),这通常具有很多优势
答案 2 :(得分:0)
创建图像文件的对象:
Bitmap bimage = new Bitmap(@"C:\Pictures\2765.jpg");
并通过您的函数传递此对象:
UserInfo("abc", "abc@yahoo.com", bimage);
接收图片:
void UserInfo(string userName, string userEmail, Bitmap userImagel)
{
// code here
}