Veri Web Denetimlerinde İkili Verileri Görüntüleme (C#)
tarafından Scott Mitchell
Bu öğreticide, bir görüntü dosyasının görüntülenmesi ve PDF dosyası için 'İndir' bağlantısının sağlanması dahil olmak üzere bir Web sayfasında ikili veri sunma seçeneklerine göz atacağız.
Giriş
Önceki öğreticide, ikili verileri uygulamanın temel veri modeliyle ilişkilendirmeye yönelik iki tekniği inceledik ve dosyaları tarayıcıdan web sunucusunun dosya sistemine yüklemek için FileUpload denetimini kullandık. Karşıya yüklenen ikili verileri veri modeliyle nasıl ilişkilendirebileceğimizi henüz görmedik. Yani, bir dosya karşıya yüklendikten ve dosya sistemine kaydedildikten sonra, dosyanın yolu uygun veritabanı kaydında depolanmalıdır. Veriler doğrudan veritabanında depolanıyorsa, karşıya yüklenen ikili verilerin dosya sistemine kaydedilmesi gerekmez, ancak veritabanına eklenmelidir.
Ancak verileri veri modeliyle ilişkilendirmeye geçmeden önce ikili verilerin son kullanıcıya nasıl sağlanıyor bölümüne bakalım. Metin verilerini sunmak yeterince basittir, ancak ikili veriler nasıl sunulmalı? Bu, elbette ikili verilerin türüne bağlıdır. Görüntüler için büyük olasılıkla görüntüyü görüntülemek isteriz; PDF'ler, Microsoft Word belgeleri, ZIP dosyaları ve diğer ikili veri türleri için bir İndirme bağlantısı sağlamak büyük olasılıkla daha uygundur.
Bu öğreticide GridView ve DetailsView gibi veri Web denetimlerini kullanarak ikili verilerin ilişkili metin verileriyle birlikte nasıl sunılacağına bakacağız. Sonraki öğreticide, karşıya yüklenen bir dosyayı veritabanıyla ilişkilendirmeye dikkat edeceğiz.
1. Adım: Değer SağlamaBrochurePath
Picture
Tablodaki Categories
sütun, çeşitli kategori görüntüleri için ikili verileri zaten içeriyor. Özellikle, her kaydın Picture
sütunu ayrıntılı, düşük kaliteli, 16 renkli bit eşlem görüntüsünün ikili içeriğini tutar. Her kategori resmi 172 piksel genişliğinde ve 120 piksel yüksekliğindedir ve kabaca 11 KB tüketir. Dahası, sütundaki Picture
ikili içerik, görüntüyü görüntülemeden önce çıkarılması gereken 78 baytlık bir OLE üst bilgisi içerir. Northwind veritabanının kökleri Microsoft Access'te olduğundan bu üst bilgi bilgileri mevcuttur. Access'te ikili veriler, bu üst bilgideki OLE Nesnesi veri türü kullanılarak depolanır. Şimdilik, resmi görüntülemek için bu düşük kaliteli görüntülerden üst bilgileri nasıl çıkaracağımızı göreceğiz. Gelecek öğreticide, bir kategori Picture
sütununu güncelleştirmek için bir arabirim oluşturacak ve OLE üst bilgilerini kullanan bu bit eşlem görüntülerini gereksiz OLE üst bilgileri olmadan eşdeğer JPG görüntüleriyle değiştireceğiz.
Önceki öğreticide FileUpload denetiminin nasıl kullanılacağını gördük. Bu nedenle, web sunucusunun dosya sistemine broşür dosyaları ekleyebilirsiniz. Ancak bunu yapmak tablodaki BrochurePath
Categories
sütunu güncelleştirmez. Sonraki öğreticide bunu nasıl gerçekleştirebileceğimizi göreceğiz, ancak şimdilik bu sütun için değerleri el ile sağlamamız gerekiyor.
Bu öğreticinin indirmesinde klasörde Deniz Ürünleri dışında her kategori için birer tane olacak şekilde yedi PDF broşür dosyası ~/Brochures
bulacaksınız. Tüm kayıtların ilişkili ikili verilere sahip olmadığı senaryoların nasıl işlendiğine ilişkin bir Deniz Ürünleri broşürü eklemeyi bilerek atladım. Tabloyu bu değerlerle güncelleştirmek Categories
için Sunucu Gezgini'nden düğüme Categories
sağ tıklayın ve Tablo Verilerini Göster'i seçin. Ardından, Şekil 1'de gösterildiği gibi broşür içeren her kategori için broşür dosyalarının sanal yollarını girin. Deniz Ürünleri kategorisi için broşür olmadığından sütununun değerini olarak NULL
bırakınBrochurePath
.
Şekil 1: Tablo BrochurePath
Sütunu değerlerini Categories
el ile girin (tam boyutlu görüntüyü görüntülemek için tıklayın)
2. Adım: GridView'da Broşürler için İndirme Bağlantısı Sağlama
Tablo için sağlanan değerlerle, her kategoriyi BrochurePath
Categories
listeleyen bir GridView oluşturmaya ve kategori broşürü indirme bağlantısını oluşturmaya hazırız. 4. Adımda bu GridView'ı kategorinin görüntüsünü de görüntüleyecek şekilde genişleteceğiz.
Araç Kutusundan bir GridView'ı klasördeki sayfanın BinaryData
Tasarım Aracı DisplayOrDownloadData.aspx
sürükleyerek başlayın. GridView'un akıllı etiketi aracılığıyla GridView'u ID
Categories
olarak ve olarak ayarlayın, bunu yeni bir veri kaynağına bağlamayı seçin. Özellikle, nesnesinin yöntemini kullanarak verileri alan adlı CategoriesDataSource
bir ObjectDataSource'a CategoriesBLL
GetCategories()
bağlayın.
Şekil 2: Adlı CategoriesDataSource
Yeni Bir ObjectDataSource Oluşturma (Tam boyutlu görüntüyü görüntülemek için tıklayın)
Şekil 3: ObjectDataSource'ı Sınıfı Kullanacak CategoriesBLL
Şekilde Yapılandırma (Tam boyutlu görüntüyü görüntülemek için tıklayın)
Şekil 4: Yöntemi Kullanarak GetCategories()
Kategori Listesini Alma (Tam boyutlu görüntüyü görüntülemek için tıklayın)
Veri Kaynağını Yapılandırma sihirbazını tamamladıktan sonra Visual Studio, , CategoryName
, Description
, NumberOfProducts
veDataColumn
BrochurePath
s için CategoryID
GridView'a Categories
otomatik olarak bir BoundField ekler. Yöntem sorgusu bu bilgileri almadığından BoundField'i GetCategories()
kaldırınNumberOfProducts
. Ayrıca BoundField'i CategoryID
kaldırın ve ve BrochurePath
BoundFields HeaderText
özelliklerini sırasıyla Category ve Broşür olarak yeniden adlandırınCategoryName
. Bu değişiklikleri yaptıktan sonra GridView ve ObjectDataSource bildirim temelli işaretlemeniz aşağıdaki gibi görünmelidir:
<asp:GridView ID="Categories" runat="server"
AutoGenerateColumns="False" DataKeyNames="CategoryID"
DataSourceID="CategoriesDataSource" EnableViewState="False">
<Columns>
<asp:BoundField DataField="CategoryName" HeaderText="Category"
SortExpression="CategoryName" />
<asp:BoundField DataField="Description" HeaderText="Description"
SortExpression="Description" />
<asp:BoundField DataField="BrochurePath" HeaderText="Brochure"
SortExpression="BrochurePath" />
</Columns>
</asp:GridView>
<asp:ObjectDataSource ID="CategoriesDataSource" runat="server"
OldValuesParameterFormatString="original_{0}"
SelectMethod="GetCategories" TypeName="CategoriesBLL">
</asp:ObjectDataSource>
Bu sayfayı tarayıcı üzerinden görüntüleyin (bkz. Şekil 5). Sekiz kategorinin her biri listelenir. Değerleri olan BrochurePath
yedi kategori, BrochurePath
ilgili BoundField içinde görüntülenen değere sahiptir. değeri olan NULL
BrochurePath
deniz ürünleri boş bir hücre görüntüler.
Şekil 5: Her Kategorinin Adı, Açıklaması ve BrochurePath
Değeri Listelenir (Tam boyutlu resmi görüntülemek için tıklayın)
Sütunun metnini BrochurePath
görüntülemek yerine broşüre bir bağlantı oluşturmak istiyoruz. Bunu yapmak için BoundField'i BrochurePath
kaldırın ve bir HyperLinkField ile değiştirin. Yeni HyperLinkField özelliğini HeaderText
Broşür, Text
özelliğini Broşürü Görüntüle ve DataNavigateUrlFields
özelliğini olarak BrochurePath
ayarlayın.
Şekil 6: için HyperLinkField ekleme BrochurePath
Bu, Şekil 7'de gösterildiği gibi GridView'a bir bağlantı sütunu ekler. Broşürü Görüntüle bağlantısına tıklandığında PDF okuyucunun yüklü olup olmadığına ve tarayıcı ayarlarına bağlı olarak PDF doğrudan tarayıcıda görüntülenir veya kullanıcıdan dosyayı indirmesi istenir.
Şekil 7: Broşürü Görüntüle Bağlantısına Tıklayarak Kategori Broşürü Görüntülenebilir (Tam boyutlu resmi görüntülemek için tıklayın)
Şekil 8: Kategori Broşürü PDF'si Görüntüleniyor (Tam boyutlu resmi görüntülemek için tıklayın)
Broşür Olmadan Kategoriler için Broşür Metnini Görüntüle'yi Gizleme
Şekil 7'de gösterildiği gibi, BrochurePath
HyperLinkField için değer olmayanNULL
bir değer olup olmadığına bakılmaksızın, tüm kayıtlar için BrochurePath
özellik değerini ( Broşürü Görüntüle ) görüntülerText
. Tabii ki ise BrochurePath
NULL
, deniz ürünleri kategorisinde olduğu gibi bağlantı yalnızca metin olarak görüntülenir (Şekil 7'ye bakın). Broşürü Görüntüle metnini görüntülemek yerine, değer içermeyen BrochurePath
bu kategorilerin Broşür Yok gibi alternatif metinler görüntülemesi iyi olabilir.
Bu davranışı sağlamak için, içeriği değere göre BrochurePath
uygun çıkışı yayan bir sayfa yöntemi çağrısıyla oluşturulan TemplateField'ı kullanmamız gerekir. Bu biçimlendirme tekniğini ilk olarak GridView Denetimi öğreticisindeki TemplateFields Kullanma öğreticisinde keşfettik.
HyperLinkField'i seçip BrochurePath
Sütunları Düzenle iletişim kutusundaki Bu alanı TemplateField'e dönüştür bağlantısına tıklayarak HyperLinkField'i TemplateField'e dönüştürün.
Şekil 9: HyperLinkField'i TemplateField'e Dönüştürme
Bu, özelliği değere bağlı BrochurePath
bir HyperLink Web denetimi NavigateUrl
içeren bir ItemTemplate
TemplateField oluşturur. Bu işaretlemeyi, değerini BrochurePath
geçirerek yöntemine GenerateBrochureLink
yapılan bir çağrıyla değiştirin:
<asp:TemplateField HeaderText="Brochure">
<ItemTemplate>
<%# GenerateBrochureLink(Eval("BrochurePath")) %>
</ItemTemplate>
</asp:TemplateField>
Ardından, ASP.NET sayfasının arka planda kod sınıfında bir string
döndüren ve giriş parametresi olarak kabul eden adlı GenerateBrochureLink
bir object
yöntem oluşturunprotected
.
protected string GenerateBrochureLink(object BrochurePath)
{
if (Convert.IsDBNull(BrochurePath))
return "No Brochure Available";
else
return string.Format(@"<a href="{0}">View Brochure</a>",
ResolveUrl(BrochurePath.ToString()));
}
Bu yöntem, geçirilen object
değerin bir veritabanı NULL
olup olmadığını belirler ve bu durumda kategoride broşür bulunmadığını belirten bir ileti döndürür. Aksi takdirde, bir BrochurePath
değer varsa, köprüde görüntülenir. Değer varsa BrochurePath
yöntemineResolveUrl(url)
geçirildiğini unutmayın. Bu yöntem, karakteri uygun sanal yol ile değiştirerek ~
geçirilen URL'yi çözümler. Örneğin, uygulamanın kökü konumundaysa /Tutorial55
ResolveUrl("~/Brochures/Meats.pdf")
döndürür/Tutorial55/Brochures/Meat.pdf
.
Şekil 10'da bu değişiklikler uygulandıktan sonra sayfa gösterilir. Deniz Ürünleri kategorisi BrochurePath
alanında artık Broşür Yok metninin görüntülendiğini unutmayın.
Şekil 10: BroşürSüz Kategoriler için Kullanılabilir Broşür Yok Metni Görüntüleniyor (Tam boyutlu resmi görüntülemek için tıklayın)
3. Adım: Kategori Resmi Görüntülemek için Web Sayfası Ekleme
Kullanıcı bir ASP.NET sayfasını ziyaret ettiğinde, ASP.NET sayfasının HTML'sini alır. Alınan HTML yalnızca metindir ve herhangi bir ikili veri içermez. Görüntüler, ses dosyaları, Macromedia Flash uygulamaları, ekli Windows Medya Oynatıcı videoları gibi ek ikili veriler web sunucusunda ayrı kaynaklar olarak bulunur. HTML bu dosyalara başvurular içerir, ancak dosyaların gerçek içeriğini içermez.
Örneğin, HTML'de <img>
öğesi bir resme başvurmak için kullanılır ve src
özniteliği görüntü dosyasına şöyle işaret ediyor:
<img src="MyPicture.jpg" ... />
Bir tarayıcı bu HTML'yi aldığında, görüntü dosyasının ikili içeriğini almak için web sunucusuna başka bir istekte bulunur ve bu istek daha sonra tarayıcıda görüntülenir. Aynı kavram tüm ikili veriler için de geçerlidir. 2. Adımda, broşür sayfanın HTML işaretlemesinin bir parçası olarak tarayıcıya gönderilmedi. Bunun yerine, işlenen HTML tıklandığında tarayıcının doğrudan PDF belgesini istemesine neden olan köprüler sağlar.
Kullanıcıların veritabanında bulunan ikili verileri görüntülemesine veya indirmesine izin vermek için verileri döndüren ayrı bir web sayfası oluşturmamız gerekir. Uygulamamız için doğrudan veritabanında kategorinin resmi olarak depolanan tek bir ikili veri alanı vardır. Bu nedenle, çağrıldığında belirli bir kategoriye ait görüntü verilerini döndüren bir sayfaya ihtiyacımız vardır.
adlı DisplayCategoryPicture.aspx
klasöre BinaryData
yeni bir ASP.NET sayfası ekleyin. Bunu yaparken, Ana sayfa seç onay kutusunu işaretsiz bırakın. Bu sayfa querystring içinde bir CategoryID
değer bekler ve bu kategorinin Picture
sütununun ikili verilerini döndürür. Bu sayfa ikili veri döndürdüğünden ve başka bir şey döndürmediğinden, HTML bölümünde herhangi bir işaretlemeye gerek yoktur. Bu nedenle, sol alt köşedeki Kaynak sekmesine tıklayın ve yönergesi dışındaki tüm sayfa işaretlemesini <%@ Page %>
kaldırın. Yani, DisplayCategoryPicture.aspx
bildirim temelli işaretleme tek bir satırdan oluşmalıdır:
<%@ Page Language="C#" AutoEventWireup="true"
CodeFile="DisplayCategoryPicture.aspx.cs"
Inherits="BinaryData_DisplayCategoryPicture" %>
yönergesinde özniteliğini MasterPageFile
<%@ Page %>
görürseniz kaldırın.
Sayfanın arka planda kod sınıfında, olay işleyicisine Page_Load
aşağıdaki kodu ekleyin:
protected void Page_Load(object sender, EventArgs e)
{
int categoryID = Convert.ToInt32(Request.QueryString["CategoryID"]);
// Get information about the specified category
CategoriesBLL categoryAPI = new CategoriesBLL();
Northwind.CategoriesDataTable categories =
categoryAPI.GetCategoryWithBinaryDataByCategoryID(categoryID);
Northwind.CategoriesRow category = categories[0];
// Output HTTP headers providing information about the binary data
Response.ContentType = "image/bmp";
// Output the binary data
// But first we need to strip out the OLE header
const int OleHeaderLength = 78;
int strippedImageLength = category.Picture.Length - OleHeaderLength;
byte[] strippedImageData = new byte[strippedImageLength];
Array.Copy(category.Picture, OleHeaderLength,
strippedImageData, 0, strippedImageLength);
Response.BinaryWrite(strippedImageData);
}
Bu kod querystring değerini adlı categoryID
bir değişkene okuyarak CategoryID
başlar. Ardından, resim verileri sınıfın CategoriesBLL
GetCategoryWithBinaryDataByCategoryID(categoryID)
yöntemine yapılan bir çağrı aracılığıyla alınır. Bu veriler yöntemi kullanılarak Response.BinaryWrite(data)
istemciye döndürülür, ancak çağrılmadan önce sütun değerinin Picture
OLE üst bilgisinin kaldırılması gerekir. Bu, sütundakinden Picture
tam olarak 78 karakter küçük olacak adlı strippedImageData
bir byte
dizi oluşturularak gerçekleştirilir. Array.Copy
yöntemi, 78 konumundan category.Picture
başlayarak verilerini konumuna kopyalamak için strippedImageData
kullanılır.
özelliği, Response.ContentType
tarayıcının nasıl işlendiğini bilmesi için döndürülen içeriğin MIME türünü belirtir. Categories
Tablonun Picture
sütunu bit eşlem görüntüsü olduğundan bit eşlem MIME türü burada kullanılır (görüntü/bmp). MIME türünü atlarsanız, çoğu tarayıcı görüntü dosyasının ikili verilerinin içeriğine göre türü çıkarabileceğinden görüntüyü doğru görüntülemeye devam eder. Ancak, mümkün olduğunda MIME türünü eklemek akıllıca olacaktır. MIME medya türlerinin tam listesi için İnternet Atanan Numaralar Yetkilisi web sitesine bakın.
Bu sayfa oluşturulduktan sonra, belirli bir kategorinin resmi ziyaret DisplayCategoryPicture.aspx?CategoryID=categoryID
edilerek görüntülenebilir. Şekil 11'de, içinden görüntülenebilen DisplayCategoryPicture.aspx?CategoryID=1
İçecek kategorisinin resmi gösterilir.
Şekil 11: İçecek Kategorisi Resmi Görüntüleniyor (Tam boyutlu görüntüyü görüntülemek için tıklayın)
'System.Byte[]' türüne 'System.DBNull' türünde nesne ataması yapılamıyor yazan bir özel durumla karşı DisplayCategoryPicture.aspx?CategoryID=categoryID
karşıyaysanız, buna neden olabilecek iki şey vardır. İlk olarak, Categories
tablonun Picture
sütunu değerlere izin NULL
verir. DisplayCategoryPicture.aspx
Ancak sayfada değer olmayanNULL
bir değer olduğu varsayılır. Picture
değerine sahipse NULL
özelliğine CategoriesDataTable
doğrudan erişilemez. Sütun için Picture
değerlere izin NULL
vermek istiyorsanız aşağıdaki koşulu eklemek istersiniz:
if (category.IsPictureNull())
{
// Display some "No Image Available" picture
Response.Redirect("~/Images/NoPictureAvailable.gif");
}
else
{
// Send back the binary contents of the Picture column
// ... Set ContentType property and write out ...
// ... data via Response.BinaryWrite ...
}
Yukarıdaki kod, klasörde bu kategoriler için resim olmadan görüntülemek istediğiniz adlı NoPictureAvailable.gif
Images
bir resim dosyası olduğunu varsayar.
Bu özel durum, s GetCategoryWithBinaryDataByCategoryID
yönteminin CategoriesTableAdapter
SELECT
deyimi ana sorgunun sütun listesine geri döndürülürse de kaynaklanabilir. Bu durum geçici SQL deyimleri kullanıyorsanız ve TableAdapter ana sorgusu için sihirbazı yeniden çalıştırdığınızda gerçekleşebilir. Yöntemin SELECT
deyiminin GetCategoryWithBinaryDataByCategoryID
hala sütununu içerdiğinden Picture
emin olun.
Not
DisplayCategoryPicture.aspx
her ziyaret edilişinde veritabanına erişilir ve belirtilen kategorinin resim verileri döndürülür. Ancak, kullanıcı en son görüntülediğinden bu yana kategorinin resmi değişmediyse, bu harcanan çabadır. Neyse ki HTTP koşullu GET'lere izin verir. Koşullu GET ile HTTP isteğinde bulunan istemci, istemcinin bu kaynağı web sunucusundan en son aldığında tarih ve saati sağlayan bir If-Modified-Since
HTTP üst bilgisi gönderir. İçerik bu belirtilen tarihten sonra değişmediyse, web sunucusu Değiştirilmedi durum koduyla (304) yanıt verebilir ve istenen kaynağın içeriğini geri göndermeyi unutabilir. Kısacası, bu teknik, istemcinin son erişiminden bu yana değiştirilmemişse, web sunucusunu bir kaynak için içeriği geri göndermek zorunda olmaktan kurtarır.
Ancak bu davranışı uygulamak için, sütunun en son ne zaman güncelleştirildiğini Picture
yakalamak için tabloya Categories
bir PictureLastModified
sütun ve üst bilgiyi denetlemek için If-Modified-Since
kod eklemeniz gerekir. Üst bilgi ve koşullu GET iş akışı hakkında If-Modified-Since
daha fazla bilgi için bkz. RSS Korsanları için HTTP Koşullu GET ve ASP.NET Sayfasında HTTP İstekleri Gerçekleştirmeye Daha Ayrıntılı Bakış.
4. Adım: Kategori Resimlerini GridView'da Görüntüleme
Artık belirli bir kategorinin resmini görüntülemek için bir web sayfamız olduğuna göre, Resim Web denetimi veya öğesine işaret eden DisplayCategoryPicture.aspx?CategoryID=categoryID
bir HTML <img>
öğesi kullanarak görüntüleyebiliriz. URL'si veritabanı verileri tarafından belirlenen görüntüler, ImageField kullanılarak GridView veya DetailsView'da görüntülenebilir. ImageField, HyperLinkField s ve DataImageUrlFormatString
özellikleri gibi çalışan ve DataNavigateUrlFormatString
özelliklerini içerirDataImageUrlField
.DataNavigateUrlFields
Her kategorinin Categories
resmini göstermek için bir ImageField ekleyerek GridView'ı DisplayOrDownloadData.aspx
genişletelim. ImageField'i ekleyip ve DataImageUrlFormatString
özelliklerini CategoryID
sırasıyla ve DisplayCategoryPicture.aspx?CategoryID={0}
olarak ayarlamanız DataImageUrlField
yeterlidir. Bu, özniteliği DisplayCategoryPicture.aspx?CategoryID={0}
başvuruda bulunan src
bir öğeyi işleyen bir <img>
GridView sütunu oluşturur ve burada {0} GridView satır CategoryID
değeriyle değiştirilir.
Şekil 12: GridView'a ImageField ekleme
ImageField'i ekledikten sonra GridView'unuzun bildirim temelli söz dizimi aşağıdaki gibi görünmelidir:
<asp:GridView ID="Categories" runat="server" AutoGenerateColumns="False"
DataKeyNames="CategoryID" DataSourceID="CategoriesDataSource"
EnableViewState="False">
<Columns>
<asp:BoundField DataField="CategoryName" HeaderText="Category"
SortExpression="CategoryName" />
<asp:BoundField DataField="Description" HeaderText="Description"
SortExpression="Description" />
<asp:TemplateField HeaderText="Brochure">
<ItemTemplate>
<%# GenerateBrochureLink(Eval("BrochurePath")) %>
</ItemTemplate>
</asp:TemplateField>
<asp:ImageField DataImageUrlField="CategoryID"
DataImageUrlFormatString="DisplayCategoryPicture.aspx?CategoryID={0}">
</asp:ImageField>
</Columns>
</asp:GridView>
Bu sayfayı bir tarayıcı üzerinden görüntülemek için biraz zaman ayırın. Her kaydın artık kategori için nasıl bir resim içerdiğini unutmayın.
Şekil 13: Kategorinin Resmi Her Satır için Görüntülenir (Tam boyutlu görüntüyü görüntülemek için tıklayın)
Özet
Bu öğreticide ikili verilerin nasıl sunıldığını inceledik. Verilerin nasıl sunulduğu, veri türüne bağlıdır. PDF broşür dosyaları için, kullanıcıya tıklandığında kullanıcıyı doğrudan PDF dosyasına götüren bir Broşürü Görüntüle bağlantısı sunduk. Kategori resmi için önce veritabanından ikili verileri alıp döndürmek için bir sayfa oluşturduk ve ardından bu sayfayı her kategorinin resmini GridView'da görüntülemek için kullandık.
İkili verilerin nasıl görüntüleneceğini incelediğimize göre, ikili verilerle veritabanında ekleme, güncelleştirme ve silme işlemlerinin nasıl gerçekleştirildiğini incelemeye hazırız. Sonraki öğreticide, karşıya yüklenen bir dosyayı ilgili veritabanı kaydıyla nasıl ilişkilendirebileceğimizi inceleyeceğiz. Bundan sonraki öğreticide mevcut ikili verilerin nasıl güncelleştirildiğini ve ilişkili kaydı kaldırıldığında ikili verilerin nasıl silindiğini göreceğiz.
Mutlu Programlama!
Yazar hakkında
Yedi ASP/ASP.NET kitabının yazarı ve 4GuysFromRolla.com kurucusu Scott Mitchell, 1998'den beri Microsoft Web teknolojileriyle çalışmaktadır. Scott bağımsız bir danışman, eğitmen ve yazar olarak çalışmaktadır. Son kitabı Sams Teach Yourself ASP.NET 24 Saat içinde 2.0. Adresine adresinden veya adresinden ulaşabileceğiniz http://ScottOnWriting.NETblogu aracılığıyla ulaşabilirsinizmitchell@4GuysFromRolla.com.
Özel Teşekkürler
Bu öğretici serisi birçok yararlı gözden geçiren tarafından gözden geçirildi. Bu öğreticinin baş gözden geçirenleri Teresa Murphy ve Dave Gardner'dı. Yaklaşan MSDN makalelerimi gözden geçirmek istiyor musunuz? Öyleyse, bana bir satır mitchell@4GuysFromRolla.combırakın.
Geri Bildirim
https://aka.ms/ContentUserFeedback.
Çok yakında: 2024 boyunca, içerik için geri bildirim mekanizması olarak GitHub Sorunları’nı kullanımdan kaldıracak ve yeni bir geri bildirim sistemiyle değiştireceğiz. Daha fazla bilgi için bkz.Gönderin ve geri bildirimi görüntüleyin