다음과 같이 사용자 정의 컨트롤을 만들어 이미지를 업로드했습니다. 그것의 코드 뒤에 나는 이미지를 저장하는 방법이있다. 다른 버튼의 클릭 이벤트에ASP.NET 사용자 컨트롤에 대한 호출 메서드
public partial class UCImageUploader : System.Web.UI.UserControl
{
public bool SaveImg()
{
//file field isn't empty
if (FileUploadImage.PostedFile != null)
{
//check file size
HttpPostedFile img = FileUploadImage.PostedFile;
if (img.ContentLength == 0) // no file uploaded
{
msg = "No file was uploaded";
LblMsg.Text = msg;
return false;
}
else if (img.ContentLength > fileSizeInKB * 1024) // file size exceeds limit
{
msg = "File size exceeds the limit. Max is " + fileSizeInKB + "KB";
LblMsg.Text = msg;
return false;
}
else // accepted file size
{
//check file extension jpg,jpeg,BMP
string[] fileExtensions = { "jpg", "jpeg", "bmp" };
if (!fileExtensions.Contains(Path.GetExtension(img.FileName).ToLower()))
{
msg = "File extension must be of jpg,jpeg,bmp";
LblMsg.Text = msg;
return false;
}
}
}
msg = "Valid File";
LblMsg.Text = msg;
return valid;
}
을 다음과 같이 뒤에
<%@ Control Language="C#" AutoEventWireup="true" CodeBehind="UCImageUploader.ascx.cs"
Inherits="WebApplicationFor_ABC.UCImageUploader" %>
<div>
<asp:FileUpload ID="FileUploadImage" runat="server" />
<asp:Image ID="ImageThumbnail" runat="server" />
<asp:Label ID="LblMsg" runat="server" Text=""></asp:Label>
<asp:CheckBox ID="CheckBoxDelete" runat="server" Text="Delete"/>
</div>
코드 나는이 SaveImg()
메서드를 호출하고 이미지를 저장합니다. 문제는 다시 게시 이미지가 null로 반환되기 때문입니다. 어떻게 해결할 수 있을까요?
문제는 'SaveImg' 방법 (또는 누가 아는가)에 있어야합니다. 그것을 공유하지 않으면 아무도 당신의 문제를 해결할 수 없을 것이라고 믿습니다. –