ASP.NET WP - 图像处理



在本节中,我们将讨论如何在您的网站上添加和显示图像。在开发网站时,您可以向网站和各个页面添加图像。如果图像已存在于您的站点上,则可以使用HTML <img> 标签在页面上显示它。

动态显示图像

让我们通过在项目中创建一个名为Images的新文件夹并向其中添加一些图像来了解一个简单的示例。

Images

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

Dynamic Images

单击“确定”,然后替换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。该列表有三个选项,每个列表选项的value属性都包含已放入images文件夹中的一个图像的名称。

在上面的代码中,该列表允许用户选择一个友好的名称,例如Nature 1,然后在提交页面时传递.jpg 文件名

在代码中,您可以通过读取Request["Choice"]来获取用户从列表中的选择。首先,它将查看是否存在任何选择,然后它将为图像设置一个路径,该路径包含图像文件夹的名称和用户的图像文件名。

让我们运行应用程序并指定以下 URLhttps://127.0.0.1:36905/DynamicImages,然后您将看到以下输出。

Display Image

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

Index

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

Update the Photo

上传图像

只有当图像在您的网站上可用时,您才能动态显示它,但有时您需要显示不在网站上的图像。因此,您需要先上传它,然后才能在网页上显示该图像。

让我们了解一个简单的示例,在该示例中我们将上传图像,首先我们将创建一个新的CSHTML文件。

Upload Image

在“名称”字段中输入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 - https://127.0.0.1:36905/UploadImage,然后您将看到以下输出。

Uploaded Image

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

Choose Image

如您所见,已选择images.jpg图像,让我们单击“上传”按钮以上传图像。

Click Upload Image
广告