2009-11-10 2 views
0

У меня есть веб-приложение для загрузки видео и изображений. На локальном сервере, который работает отлично. Но когда я загрузил его на веб-сервер, есть ошибка, и я не могу загрузить файлы. ОшибкаSecurity Exception

Security Exception 
Description: The application attempted to perform an operation not allowed by the security policy. To grant this application the required permission please contact your system administrator or change the application's trust level in the configuration file. 

Exception Details: System.Security.SecurityException: Request for the permission of type 'System.Security.Permissions.FileIOPermission, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089' failed. 

Source Error: 

The source code that generated this unhandled exception can only be shown when compiled in debug mode. To enable this, please follow one of the below steps, then request the URL: 

1. Add a "Debug=true" directive at the top of the file that generated the error. Example: 

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

or: 

2) Add the following section to the configuration file of your application: 

<configuration> 
    <system.web> 
     <compilation debug="true"/> 
    </system.web> 
</configuration> 

Note that this second technique will cause all files within a given application to be compiled in debug mode. The first technique will cause only that particular file to be compiled in debug mode. 

Important: Running applications in debug mode does incur a memory/performance overhead. You should make sure that an application has debugging disabled before deploying into production scenario. 

Я использую код для загрузки это ..

Dim connectionstring As String = ConfigurationManager.ConnectionStrings("UploadConnectionString").ConnectionString 
        connection = New SqlConnection(connectionstring) 
        Dim cmd As New SqlCommand("insert into FileM (FileName,[File],FilePath,FileSize)" + "values(@FileName,@File,@FilePath,@FileSize)", connection) 
        cmd.Parameters.Add("@FileName", SqlDbType.NVarChar, buffer.Length).Value = FileUpload1.FileName 
        cmd.Parameters.Add("@File", SqlDbType.VarBinary).Value = buffer 
        cmd.Parameters.Add("@FileSize", SqlDbType.BigInt).Value = file.ContentLength 
        cmd.Parameters.Add("@FilePath", SqlDbType.VarChar).Value = path 
        Using connection 
         connection.Open() 
         Dim i As Integer = cmd.ExecuteNonQuery 

        End Using 

Там есть какие-либо проблемы с этим типом загрузки или вставить в таблицу с помощью Bussiness логического уровня?

ответ

1

Эта ошибка, вероятно, связана с тем, что учетная запись, на которой работает ваше приложение, не имеет прав на запись в каталог, в котором вы пытаетесь сохранить файлы.

+0

Как я могу это решить? – user85511

+0

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

+0

Из фрагмента, который вы загрузили, кажется, что вы храните файл в базе данных, и все должно быть хорошо. Единственное, что неясно, это переменная 'path', которую вы используете. Как инициализируется эта переменная? –

Смежные вопросы