2011-12-30 1 views
0

я использую vb.netпочему это изображение значка пустой/белый, когда fileupload.saveas

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

если я нажмите кнопку «показать все файлы», изображение отображается, но изображение значка пустой или белый, как на картинке ниже показывают

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

так, как я могу позволить, не появляться белый значок и всегда появляться в папке загрузки, когда я загружаю изображение вместо того, чтобы вручную нажимать на изображение, чтобы включить его?

это мой код

Protected Sub uploadImage() 
    Dim filename As String = FileUploadImg.FileName 
    Dim fileType As String = filename.Substring(filename.Length - 4).ToLower() 
    If (fileType = ".gif") Or (fileType = ".jpg") Or (fileType = ".png") Then 
     FileUploadImg.SaveAs("C:\Users\Jane\Desktop\project\FileUpload\FileUpload\WebRole1\images\" & txtboxName.Text & "_" & FileUploadImg.FileName) 
    Else 
     MsgBox("failed") 

    End If 
End Sub 

Protected Sub btnSubmit_Click(sender As Object, e As EventArgs) Handles btnSubmit.Click 
     uploadImage() 

     'End If 
    End Sub 

это образ того, как он выглядит, как

blank icon

ответ

0

Вы должны назначить каталог, в котором будут размещены ваши добавления. Например, если я создаю новый проект в C: \, Website1, директивным указателем будет C: \ Website1. Затем я создал каталог для хранения загрузок: C: \ Website1 \ uploads и не забудьте установить разрешения для чтения/записи для учетной записи IIS. Я бы тогда сделал:

string uploadPath = MapPath("pictures\\"); 
this.fileUpload1.SaveAs(uploadPath + this.fileUpload1.FileName); 

Как только файл находится в каталоге загрузки, я могу перемещать его в любом месте, где захочу.

+0

Разве это не то же самое, что я сделал? что вы имеете в виду по собственному разрешению читать/писать для учетной записи IIS ... но как? – devilking

1

Необходимо сохранить сохраненный файл в сохраненное хранилище на веб-сервере и отобразить файлы на некоторый URL-адрес, чтобы к ним можно было получить доступ из Интернета.

В лазурной среде локальный диск (например, c:) не сохраняется (представьте себе несколько веб-ролей - как вы можете использовать одно и то же изображение из других экземпляров).

Решение Azure Blob Storage (вы должны указать set-up его в вашей Azure Management Console) и загрузить файл в контейнер хранения Blob.

// Setup the connection to Windows Azure Storage 
var storageAccount = CloudStorageAccount.FromConfigurationSetting("DataConnectionString"); 
var blobClient = storageAccount.CreateCloudBlobClient(); 

// Get and create the container 
var blobContainer = blobClient.GetContainerReference("public-images"); 
blobContainer.CreateIfNotExist(); 

    // Allow blob to be downloaded 
    containerPermissions = new BlobContainerPermissions(); 
    containerPermissions.PublicAccess = BlobContainerPublicAccessType.Blob; 
    blobContainer.SetPermissions(containerPermissions); 

// Get the target blob reference 
var blobAddressUri = String.Format("{0}{1}", fileName); //create random fileName here 
var blob = BlobContainer.GetBlobReference(blobAddressUri); 

// Set blob Content-Type 
blob.Properties.ContentType = FileUploadImg.PostedFile.ContentType ; 

// Upload to the blob storage account 
blob.UploadFromStream(FileUploadImg.FileContent); 

Ваш файл теперь доступен по адресу blob.Uri.

+0

bt я еще не использую хранилище blob ... я заглядываю в папку изображений проекта webrole – devilking

+0

Если вы находитесь в Azure, вам нужно использовать хранилище blob - вы просто проводите время с тестированием не-лазурного совместимого решения. Чтобы ответить на ваш вопрос в любом случае - используйте метод Server.MapPath во время файла savig - с помощью этого метода вы получите URL-адрес, доступный для доступа. – Matej

+0

У меня не было учетной записи, поэтому я просто хочу загрузить ее в папку под созданным проектом, моя проблема - всякий раз, когда я загружаю ее, не будет отображаться изображения в папке, однако, если я нажму на «показать весь файл» «он показывает изображение, но значок пуст или белый, так что неправильно? как я могу его изменить? – devilking

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