Ömer Çelik

Yazılımcının Günlüğü

Custom list ve Picture Library kullanarak basit bir ilan ekleme işlemi yapmak

Aşağıdaki gibi ürünler isminde bir custom list oluşturdum. kategoriler diğer bir listten beslenmekte ve kapak resmi Resimler isminde bir resim kitaplığına upload edilecek sonrasında ise resmin yolu ürünler listindeki kapak alanına update edilecek.

            string itemid = string.Empty;
            using (SPSite site = new SPSite("http://www.omercelik.com.tr/Urunler"))
            {
                using (SPWeb web = site.OpenWeb())
                {
                    web.AllowUnsafeUpdates = true;
                    SPList oList = web.Lists["ikinciel"];
                    SPListItem oListItem = oList.Items.Add();
                    oListItem["Title"] = ui_txt_title.Text;
                    oListItem["kategoriler"] = ui_drp_kategoriler.SelectedValue;
                    oListItem["ozet"] = ui_txt_ozet.Text;
                    oListItem["aciklama"] = ui_txt_aciklama.Text;
                    oListItem["fiyat"] = ui_txt_fiyat.Text;
                    oListItem.Update();
                    itemid = oListItem.ID.ToString();
                    if (FileUpload1.PostedFile != null)
                    {
                        if (FileUpload1.PostedFile.ContentLength > 0)
                        {
                            System.IO.Stream strm = FileUpload1.PostedFile.InputStream;
                            byte[] byt = new byte[Convert.ToInt32(FileUpload1.PostedFile.ContentLength)];
                            strm.Read(byt, 0, Convert.ToInt32(FileUpload1.PostedFile.ContentLength));
                            strm.Close();
                            SPPictureLibrary pics = (SPPictureLibrary)web.Lists["Resimler"];
                           // pics.ThumbnailSize = 90;
                            Guid gui = Guid.NewGuid();
                            SPFile file = pics.RootFolder.Files.Add(gui.ToString() + System.IO.Path.GetFileName(FileUpload1.PostedFile.FileName), byt);
                            SPListItem item = file.Item;
                            item["Title"] = "Kapak";
                            item["ikinciel"] = itemid;
                            item.Update();

                            //Kapak resmi kitaplığa eklendikten sonra ürünler listesine yolu set ediliyor
                            oListItem["kapakresim"] = file.Name;
                            string spfileExt = new FileInfo(file.Name).Extension;
                            oListItem["resimkapak"] = "/ikinciel/Resimler/_t/" +  file.Name.Replace(".", "_") + spfileExt;
                            oListItem.Update();
                            web.AllowUnsafeUpdates = false;
                            web.Dispose();
                        }
                    }
                    ui_txt_title.Text = string.Empty;
                    ui_txt_ozet.Text = string.Empty; ;
                    ui_txt_aciklama.Text = string.Empty; ;
                    ui_txt_fiyat.Text = string.Empty; ;
                }

            }

Loading