ASP.NET WP – 处理图像
ASP.NET WP – 处理图像
在本章中,我们将讨论如何在您的网站上添加和显示图像。在开发网站时,您可以将图像添加到您的网站和单个页面。如果您的网站上已有图片,那么您可以使用HTML <img> 标签将其显示在页面上。
动态显示图像
让我们看一个简单的例子,在项目中创建一个新文件夹并将其命名为Images,然后在该文件夹中添加一些图像。

现在添加另一个 cshtml 文件并将其命名为DynamicImages.cshtml。

单击确定,然后替换 DynamicImages.cshtml 文件中的以下代码。
@{
var imagePath = "";
if (Request["Choice"] != null){ imagePath = "images/" + Request["Choice"]; }
}
<!DOCTYPE html>
<html>
<body>
<h1>Display Images</h1>
<form method = "post" action = "">
I want to see:
<select name = "Choice">
<option value = "index.jpg">Nature 1</option>
<option value = "index1.jpg">Nature 2</option>
<option value = "index2.jpg">Nature 3</option>
</select>
<input type = "submit" value = "Submit" />
@if (imagePath != ""){
<p><img src = "@imagePath" alt = "Sample" /></p>
}
</form>
</body>
</html>
如您所见,页面正文有一个下拉列表,它是一个<select> 标记,名为Choice。该列表具有三个选项,每个列表选项的值属性都有已放入图像文件夹中的图像之一的名称。
在上面的代码中,列表让用户选择一个友好的名称,如Nature 1,然后在提交页面时传递.jpg 文件名。
在代码中,您可以通过阅读Request[“Choice”]从列表中获取用户的选择。首先,它将查看是否有任何选择,然后它将为图像设置一个路径,该路径由图像文件夹的名称和用户的图像文件名组成。
让我们运行应用程序并指定以下 URL http://localhost:36905/DynamicImages然后您将看到以下输出。

让我们点击提交按钮,您将看到index.jpg文件已加载到页面上,如下面的屏幕截图所示。

如果您想从下拉列表中选择另一张照片,比如说 Nature 2,然后单击提交按钮,它将更新页面上的照片。

上传图片
只有在您的网站上可用时,您才能动态显示图像,但有时您必须显示在您的网站上不可用的图像。因此,您需要先上传它,然后才能在网页上显示该图像。
让我们看一个上传图片的简单示例,首先我们将创建一个新的 CSHTML 文件。

在名称字段中输入UploadImage.cshtml并单击确定。现在让我们替换 UploadImage.cshtml 文件中的以下代码
@{ WebImage photo = null;
var newFileName = "";
var imagePath = "";
if(IsPost){
photo = WebImage.GetImageFromRequest();
if(photo != null){
newFileName = Guid.NewGuid().ToString() + "_" +
Path.GetFileName(photo.FileName);
imagePath = @"images\" + newFileName;
photo.Save(@"~\" + imagePath);
}
}
}
<!DOCTYPE html>
<html>
<head>
<title>Image Upload</title>
</head>
<body>
<form action = "" method = "post" enctype = "multipart/form-data">
<fieldset>
<legend> Upload Image </legend>
<label for = "Image">Image</label>
<input type = "file" name = "Image" size = "35"/>
<br/>
<input type = "submit" value = "Upload" />
</fieldset>
</form>
<h1>Uploaded Image</h1>
@if(imagePath != ""){
<div class = "result"><img src = "@imagePath" alt = "image" /></div>
}
</body>
</html>
让我们运行这个应用程序并指定以下 URL – http://localhost:36905/UploadImage然后您将看到以下输出。

要上传图像,请单击“选择文件”,然后浏览到要上传的图像。选择图像后,图像名称将显示在“选择文件”按钮旁边,如下面的屏幕截图所示。

如您所见,images.jpg图片被选中,让我们点击 Upload 按钮上传图片。