Поделиться через


HtmlInputFile.Accept Свойство

Определение

Возвращает или задает разделенный запятыми список кодировк MIME, используемый для ограничения типов файлов, которые пользователь может выбрать.

public:
 property System::String ^ Accept { System::String ^ get(); void set(System::String ^ value); };
public string Accept { get; set; }
member this.Accept : string with get, set
Public Property Accept As String

Значение свойства

Список кодировок MIME, разделенных запятыми.

Примеры

В следующем примере кода показано, как использовать Accept свойство, чтобы ограничить выбор любого файла, отличного от файла изображения. Для правильной работы этого примера необходимо создать каталог, который вызывается Temp на диске компьютера C. Так как поддержка Accept свойства зависит от браузера, проверка на стороне сервера выполняется, чтобы убедиться, что отправляются только образы. Исключение возникает, если загруженный файл не может быть прочитан как Image тип.

<%@ Page Language="C#" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" 
   "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<script runat="server">
    void Button1_Click(object Source, EventArgs e)
    {

        // Check to see if a file was selected.
        if (Text1.Value == "")
        {
            Span1.InnerHtml = "Error: You must enter a file name.";
            return;
        }

        // Save the file.
        if (File1.PostedFile.ContentLength > 0)
        {
            try
            {
                try
                {
                    using (System.Drawing.Image input =
                        System.Drawing.Image.FromStream(File1.PostedFile.InputStream))
                    {
                        File1.PostedFile.SaveAs("c:\\temp\\" + 
                            Server.HtmlEncode(Text1.Value));
                        Span1.InnerHtml = "File uploaded successfully to <b>c:\\temp\\" +
                            Server.HtmlEncode(Text1.Value) + 
                            "</b> on the Web server.";
                    }
                }
                catch
                {
                    throw new Exception("Not a valid image file.");
                }
            }
            catch (Exception exc)
            {
                Span1.InnerHtml = "Error saving file <b>c:\\temp\\" +
                                   Server.HtmlEncode(Text1.Value) + 
                                   "</b>. " + exc.Message;
            }
        }
    }

</script>

<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
    <title>HmtlInputFile Example</title>
</head>
<body>
    <form id="Form1" enctype="multipart/form-data" 
          runat="server">
    <div>  
       Select File to Upload: 
       <input id="File1" 
              type="file"              
              accept="image/*"
              runat="server"/>
       <p>
       Save as file name (no path): 
       <input id="Text1" 
              type="text" 
              runat="server"/>
       </p>
       <p>
       <span id="Span1" 
             style="font: 8pt verdana;" 
             runat="server" />
 
       </p>
       <p>
       <input type="button" 
              id="Button1" 
              value="Upload" 
              onserverclick="Button1_Click" 
              runat="server" />
       </p>
    </div>
    </form>
</body>
</html>
<%@ Page Language="VB" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" 
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<script runat="server">

    Protected Sub Button1_Click(ByVal sender As Object, ByVal e As System.EventArgs)

        ' Check to see if a file was selected.
        If (Text1.Value = "") Then
            Span1.InnerHtml = "Error: You must enter a file name."
            Return
        End If
        
        ' Save the file
        If (File1.PostedFile.ContentLength > 0) Then
            Try
                Try
                    Using input As System.Drawing.Image = _
                       System.Drawing.Image.FromStream(File1.PostedFile.InputStream)
                        File1.PostedFile.SaveAs("c:\\temp\\" & _
                            Server.HtmlEncode(Text1.Value))
                        Span1.InnerHtml = "File uploaded successfully to <b>c:\\temp\\" & _
                            Server.HtmlEncode(Text1.Value) & _
                            "</b> on the Web server."
                        
                    End Using
                Catch
                    Throw New Exception("Not a valid image file.")
                End Try
            Catch exc As Exception
                Span1.InnerHtml = "Error saving file <b>c:\\temp\\" & _
                                   Server.HtmlEncode(Text1.Value) & _
                                   "</b>. " & exc.Message
            End Try
        End If
        
    End Sub

</script>

<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
    <title>HtmlInputFile Example</title>
</head>
<body>
    <form id="form1" runat="server">
    <div>
       Select File to Upload: 
       <input id="File1" 
              type="file"              
              accept="image/jpeg"
              runat="server"/>
       <p>
       Save as file name (no path): 
       <input id="Text1" 
              type="text" 
              runat="server"/>
       </p>
       <p>
       <span id="Span1" 
             style="font: 8pt verdana;" 
             runat="server" />
 
       </p>
       <p>
       <input type="button" 
              id="Button1" 
              value="Upload" 
              onserverclick="Button1_Click" 
              runat="server" />
       </p>    
    </div>
    </form>
</body>
</html>

Комментарии

Используйте это свойство, чтобы указать тип файла, который можно отправить на сервер. Например, чтобы ограничить выделение изображениями, задайте для этого свойства значение image/*.

Замечание

Поддержка этого свойства зависит от браузера. Проверьте браузер, чтобы определить, поддерживает ли оно это свойство. Рекомендуется использовать серверный код, чтобы убедиться, что файл имеет ожидаемый тип.

Применяется к