Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Разработка под ASP.NET > Чтение из файла и создание объектов


Автор: Demogargon 20.2.2009, 09:17
Доброе время суток. 
У меня вопрос легкий для тех кто долго работает с этой технологией. 

Дано:
1. У меня есть файл image.txt, в нем хронятся имена файлов изображений.
2. Некоторые файлы находятся локально, а некоторые это ссылка в интернет
3. Есть элемент Panel на странице

Задача:
1. Считать название файла.
2. Создать img 
3. Разместить его на панели

Просьба, хотя бы приблизительный код.

Автор: 1stain 20.2.2009, 21:14
накидал на скорую руку:

разметка:
Код

<asp:Repeater runat="server" ID="Repeater1" >
            <ItemTemplate>
                <img src='<%# Eval("FilePath") %>' alt="Image" />
                <br />
            </ItemTemplate>
        </asp:Repeater>


код страницы:
Код

public partial class Home : System.Web.UI.Page
    {
        private List<Image> ImagesDataSource
        {
            get
            {
                return ViewState["ImagesDataSource"] as List<Image>;
            }
            set
            {
                ViewState["ImagesDataSource"] = value;
            }
        }

        protected void Page_Load(object sender, EventArgs e)
        {
            if (!IsPostBack)
            {
                if (ImagesDataSource == null)
                {
                    UpdateImagesDataSource();
                    Repeater1.DataSource = ImagesDataSource;
                    Repeater1.DataBind();
                }
            }
        }

        private void UpdateImagesDataSource()
        {
            string imagesFileFilePath = Server.MapPath("~/App_Data/Images.txt");
            ImagesDataSource = (from filePath in File.ReadAllLines(imagesFileFilePath)
                                select new Image { FilePath = filePath }).ToList();
            string imagesFolderPath = Server.MapPath("~/Images/");
            ImagesDataSource.ForEach(image =>
            {
                if (!Uri.IsWellFormedUriString(image.FilePath, UriKind.Absolute))
                {
                    File.Copy(image.FilePath, Path.Combine(imagesFolderPath, Path.GetFileName(image.FilePath)), true);
                    image.FilePath = ResolveUrl(string.Format("~/Images/{0}", Path.GetFileName(image.FilePath)));
                }
            });
                
        }
    }

    [Serializable]
    public class Image
    {
        public string FilePath
        {
            get;
            set;
        }
    }


файл Images.txt положи в App_Data
создай в проекте сайта папку Images

Автор: Demogargon 24.2.2009, 10:52
Ошибка    1    'ASP.default_aspx.GetTypeHashCode()': не найден метод, пригодный для переопределения    c:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\Temporary ASP.NET Files\test\e7402ca8\4d656127\App_Web_sldhryrq.0.cs    


Ошибка    2    'ASP.default_aspx.ProcessRequest(System.Web.HttpContext)': не найден метод, пригодный для переопределения    c:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\Temporary ASP.NET Files\test\e7402ca8\4d656127\App_Web_sldhryrq.0.cs    

Ошибка    3    'ASP.default_aspx' не реализует член интерфейса 'System.Web.IHttpHandler.IsReusable'    c:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\Temporary ASP.NET Files\test\e7402ca8\4d656127\App_Web_sldhryrq.0.cs    


Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)