BebeSaiyan Ответов: 1

Как получить имя файла из ajaxfileupload с помощью ASP.NET


Мне было интересно, почему я получаю пустое строковое значение, когда пытаюсь получить имя файла. Чтобы лучше понять, что я имею в виду. Чтобы получить имя файла из элемента управления AjaxFileUpload, я бы сделал этот код(который находится в классе с именем CreateBrands):

Что я уже пробовал:

string filename = Path.GetFileName(e.FileName);
ConnectionClassGuitarItems.stringInstrumentFileName1 = filename;
itemFileUpload1.SaveAs(Server.MapPath("~/Images/Brands/String Instrument Items/Guitar/") + filename);


Как вы можете видеть, я передал строковое имя файла в ConnectionClassGuitarItems.stringInstrumentFileName1, которое является свойством в классе ConnectionClassGuitarItems. Вот немного кода в ConnectionClassGuitarItems. Я не включил туда все, так как это не связано с вопросом.

public static class ConnectionClassGuitarItems
{

public static string stringInstrumentFileName1 { get; set; }
}


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

 protected void Button1_Click(object sender, EventArgs e)
{

        if (itemType1.Checked)
        {
        try {

            string item_image1 = ConnectionClassGuitarItems.stringInstrumentFileName1;
            string item_image2 = ConnectionClassGuitarItems.stringInstrumentFileName2;

            ConnectionClassGuitarItems.AddStringInstrumentItems(item_image1,item_image2);


И вот тут я наконец добавляю его в базу данных:

public static void AddStringInstrumentItems(string itemimage1, string 
 itemimage2)
{
    MusicStoreDBEntities obj = new MusicStoreDBEntities();

    instrumentItem s = new instrumentItem();
    s.itemimage1 = itemimage1;
    s.itemimage2 = itemimage2;

    obj.instrumentItems.Add(s);
    obj.SaveChanges();
}


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

1 Ответов

Рейтинг:
0

MOnii_says

Вы можете легко получить имя файла, написав

string filename1 = Path.GetFileName(FileUpload1.PostedFile.FileName);


BebeSaiyan

это решение дает мне ошибку. Он находится под AjaxFileUploadEventArgs. Даже с помощью только EventArgs, он все еще имеет ошибку.