BAĞLANTILARIM

Takip Edin:

0

SQL'de VARBINARY tipinde tutulan ziplenmiş dosyayı indirme

Cuma, Şubat 24, 2017 / / , , ,

protected void DosyaIslem(string islemYapilacakDosyaId)
        {
            try
            {
                VeriMsSQL.Islem islem = new VeriMsSQL.Islem();
                DataTable dt = islem.DosyaBilgi(islemYapilacakDosyaId);
                if (dt.Rows.Count > 0)
                {
                    DataRow dr = dt.Rows[0];
                    string dosya = dr["Dosya"].ToString();
                    string dosyaAd = dr["DosyaAd"].ToString();
                    byte[] bytes = (byte[])dr["Dosya"];
                    Response.Clear();
                    Response.AddHeader("content-disposition", "attachment;filename=" + dosyaAd + ".zip");
                    Response.ContentType = "application/zip";
                    Response.BinaryWrite(bytes);
                    Response.End();
                }
                dt.Dispose();
            }
            catch (Exception ex)
            {
                lblIslemSonuc.Text = ex.Message;
                lblIslemSonuc.CssClass = "islemHatali";
                lblIslemSonuc.Visible = true;
            }
        }

C#'ta dosyayı zip'e çevirme ve ziplenmiş dosyayı varbinary tipinde sql de tutma 

0

C#'ta dosyayı zip'e çevirme ve ziplenmiş dosyayı VARBINARY tipinde sql de tutma

Cuma, Şubat 24, 2017 / / , , ,

C# ile bir dosyayı .zip formatına çevirmek için çeşitli dll dosyayları bulunmakta. Buradaki örnekte Ionic DotNetZip kullanıldı. https://dotnetzip.codeplex.com/

   protected void DosyaYukleSql()
        {
            try
            {
                Guid guId = Guid.NewGuid();
                string dosyaAd = System.IO.Path.GetFileName(fileDosya.FileName);
                string dosyaUzanti = System.IO.Path.GetExtension(dosyaAd);
                dosya = guId + dosyaUzanti;  //dosya adını Guid ile belirledik              
                    using (ZipFile zip = new ZipFile())
                    {
                        zip.AddEntry(dosya, fileDosya.PostedFile.InputStream);
                        zip.Save(Server.MapPath("/upload/zip/") + guId + ".zip");
                        //zipi binary yap
                        byte[] byteZip = File.ReadAllBytes(Server.MapPath("/upload/zip/") + guId + ".zip");
//veritabanına ekle
                        VeriMsSQL.Islem islem = new VeriMsSQL.Islem();
                        islem.DosyaEkle(guId.ToString(), byteZip, kayitId: dosyaKayitId);
                    }
                    File.Delete(Server.MapPath("/upload/zip/") + guId + ".zip"); //klasördeki zipli dosyayı sil
            }
            catch (Exception ex)
            {
                lblIslemSonuc.Text = ex.Message;
                lblIslemSonuc.CssClass = "islemHatali";
                lblIslemSonuc.Visible = true;
            }
        }



SQL'de varbinary tipinde tutulan ziplenmiş dosyayı indirme

1

ASP.NET MVC MODAL İLE PARTIALVIEW KULLANIMI

Pazar, Ocak 29, 2017 / / , , , ,

Aşağıdaki örnekte Duzenle.cshtml isimli View içinde bulunan link tıklandığında yine Duzenle.cshtml içindeki modale _PartialOrtakDuzenle isimli PartialView yüklenecek.

Duzenle.cshtml içindeki modali çağıran linkimiz

<a href="#" class="btn btn-brand" data-toggle="modal" data-target="#m_modal" onclick="OrtakDuzenle(@item.OrtakId)">@item.Ad @item.Soyad <i class="la la-gear"></i></a>

Link tıklandığında çağrılan OrtakDuzenle isimli JavaScript Fonksiyonumuz

<script type="text/javascript">
    function OrtakDuzenle(ortakId) {
       
        var url = '@Url.Action("DuzenlePartial", "Ortak")';
        url += '/?Id=' + ortakId;
        $(".modal-body").load(url);
    }
</script>


Ortak isimli Controller içinde bulunan DuzenlePartial isimli Action, bu metod içinde işlemleri yaptıktan sonra Shared klasörü içindeki _PartialOrtakDuzenle isimli Partial View'ı dönecek. id parametresini de gönderdik.

public ActionResult DuzenlePartial(int id)
        {
            OrtakBilgi(id);
            return PartialView("_PartialOrtakDuzenle", id);
        }


Duzenle.cshtml kodları arasındaki modal

<!--begin::Modal-->
<div class="modal fade" id="m_modal" tabindex="-1" role="dialog" aria-labelledby="exampleModalLabel" aria-hidden="true">
    <div class="modal-dialog modal-lg" role="document">
        <div class="modal-content">
            <div class="modal-header">
                <h5 class="modal-title" id="exampleModalLabel">Ortak Düzenle</h5>
                <button type="button" class="close" data-dismiss="modal" aria-label="Close">
                    <span aria-hidden="true">&times;</span>
                </button>
            </div>
            <div class="modal-body">
<!--javascript fonksiyonumuz, controllerdaki işlemlerini yaptıktan sonra bu class arasına partial viewı yükleyecek..-->
            </div>           
        </div>
    </div>
</div>
<!--end::Modal-->



Jquery ve Bootstrap kullanılmıştır..

0

Html elemanları, Asp.net Kontrolü olarak kullanmak

Cumartesi, Aralık 17, 2016 / / ,

Asp.net ile web siteleri geliştirirken bazı durumlarda Asp.net kontrolü yerine ona karşılık gelen Html elemanını kullanmak esneklik sağlayabilir.

Asp.net kontrolleri arasında yer alan LinkButton, Html içinde <a> elemanına dönüşüyorsa,
Asp.net kontrolleri arasında yer alan Panel, Html içinde <div> elemanına dönüşüyorsa,
Bu durumda tasarım tarafında kullanılmış bir Panel kontrolüne kod tarafında
panelDeneme.Attributes.Add(“style”,”display:none;”); şeklinde bir özellik atayabiliriz. Bu ne işe yarar?
Örneğin Asp.net kontrollerinin Visible.false özelliğine bağlı kalmadan Javascript ile göster-gizle yapmak istediğimiz durumlarda yukarıdaki kod işimizi çözmüş olur. Çünkü kontrollerin visible.false özelliği, yapmak istediğimizle birebir aynı sonucu vermemekte. Visible.false verilen kontrol Html kaynağında üretilmemiş oluyor. Bizim istediğimiz ise Html kaynakta bulunan bir elemanın tarayıcıda gizli olması ya da tam tersi görünüyorken gizlenmesi.

Tersten gidecek olursak:

Sayfaya Html olarak yazılan
<a href=”Deneme.aspx”>Deneme</a> elemanını,
<a id=”linkMenu” runat=”server” href='<%#Eval("SayfaUrl") %>'><%#Eval("SayfaAd") %></a> şeklinde değiştirerek (yani runat=”server” ve bir id tanımı ekleyerek) Kod tarafında bir Asp.net kontrolü gibi kullanabiliriz. Burada yapmak istediğim linkMenu isimli <a> elemanını Asp.net Repeater kontrolü içinde kullanmak ve kullanıcı tarafından tıklanan menünün seçili olmasını(stilinin değişmesini) sağlamak.

Asp.net Repeater kontrolünün OnItemDataBound olayı içinden <a> elemanımıza erişelim.

protected void repeatMenu_ItemDataBound(object sender, RepeaterItemEventArgs e)
        {
            try
            {            
                    HtmlAnchor linkMenu = e.Item.FindControl("linkMenu") as HtmlAnchor; //eriştik
          }
            catch (Exception)
            {
            }
        }

Kullanıcının tıkladığı sayfa açıldığında ilgili <a> elemanını seçili yapalım.

protected void repeatMenu_ItemDataBound(object sender, RepeaterItemEventArgs e)
        {
            try
            {
             string  menuSayfaId = DataBinder.Eval(e.Item.DataItem, "SayfaId").ToString();
string cagrilanSayfaId = SayfaBilgi(cagrilanSayfaUrl); //çağrılan sayfaUrl sinden Id bilgisi bulundu varsaydık.
                //seçileni aktif yap
                if (cagrilanSayfaId == menuSayfaId)
                {
                    HtmlAnchor linkMenu = e.Item.FindControl("linkMenu") as HtmlAnchor;
                    linkMenu.Attributes.Add("style", "color: #e06c5f; background-color: #eeeff3;");
                }
            }
            catch (Exception)
            {
            }
        }

Hangi Html elemanın Asp.net’te nasıl çağrılacağı ile ilgili (burada <a> elemanı HtmlAnchor şeklinde çağrıldı) tutorialspoint.com adresinde bulduğum içerik şu şekilde;

Control NameHTML tag
HtmlHead<head>element
HtmlInputButton<input type=button|submit|reset>
HtmlInputCheckbox<input type=checkbox>
HtmlInputFile<input type = file>
HtmlInputHidden<input type = hidden>
HtmlInputImage<input type = image>
HtmlInputPassword<input type = password>
HtmlInputRadioButton<input type = radio>
HtmlInputReset<input type = reset>
HtmlText<input type = text|password>
HtmlImage<img> element
HtmlLink<link> element
HtmlAnchor<a> element
HtmlButton<button> element
HtmlForm<form> element
HtmlTable<table> element
HtmlTableCell<td> and <th>
HtmlTableRow<tr> element
HtmlTitle<title> element
HtmlSelect<select> element
HtmlGenericControlAll HTML controls not listed

0

Asp.Net ile Javascript fonksiyonu çağırırken Eval değeri kullanma

Çarşamba, Ekim 26, 2016 / / , ,

ListView içindeki Checkbox kontrolü tıklandığı zaman; 

<asp:CheckBox ID="cbSecim" runat="server" onclick='<%# "Sec(" +Eval("UrunId") + " );" %>'/>

Javascript kodu;

<script type="text/javascript">
function Sec(secilenId) {

try {
alert(secilenId);
}
catch (e) {
    alert(e.message);
          }
}
</script>

0

Asp.net Jquery AutoComplete Otomatik Tamamlama

Salı, Haziran 28, 2016 / / , , , ,

//Arama TextBox

<asp:TextBox ID="txtArama" runat="server" CssClass="arama" autocomplete="off"></asp:TextBox>   

//Kullanılan js ve css

    <script src="js/jquery.js"></script>
    <script src="js/jquery-ui.min.js"></script>
    <link href="js/jquery-ui.min.css" rel="stylesheet" />

//JavaScript

<script type="text/javascript">
        $(document).ready(function () {
            $("#<%=txtArama.ClientID %>").autocomplete({
                source: function (request, response) {
                    $.ajax({
                        url: 'WebAra.aspx/UrunGetir',
                        data: "{ 'arananKelime': '" + request.term + "'}",
                        dataType: "json",
                        type: "POST",
                        contentType: "application/json; charset=utf-8",
                        success: function (data) {
                            response($.map(data.d, function (item) {
                                return {
                                    label: item.split('-')[0],
                                    val: item.split('-')[1]
                                }
                            }))
                        },
                        error: function (response) {
                            //alert(response.responseText);
                        },
                        failure: function (response) {
                            //alert(response.responseText);
                        }
                    });
                },
                select: function (event, ui) {
                    var gidilecekItemUrl = ui.item.val;
                    window.location.href = 'Urun.aspx?' + gidilecekItemUrl;
                },
                minLength: 1
            });
        });
    </script>


//WebAra.aspx


[WebMethod(EnableSession = true)] //webmethod içinde session kullanmak gerekirse (EnableSession = true)
[ScriptMethod(ResponseFormat = ResponseFormat.Json)]
public static string[] UrunGetir(string arananKelime)
{
List<string> urunler = new List<string>();

//HttpContext.Current.Session["VERITABANI_ADI"].ToString() //WebMethod içinde Session kullanımı
//arananKelime sorguda ilgili yere

//DataTable dt = ...
//DataRow dr = ...
string urunUrl = "kategoriId=" + dr["KategoriId"].ToString() + "&urunId=" + dr["UrunId"].ToString();
string urunAd = dr["UrunAd"].ToString();
urunler.Add(string.Format("{0}-{1}", urunAd, urunUrl));
return urunler.ToArray();
}

0

ASP.NET RAZOR ROOT DİZİN URL KULLANIMI

Çarşamba, Haziran 15, 2016 / / , , ,

Asp.net Razor ile Root dizine link vermek için aşağıdaki yapı kullanılabilir.

@Url.Content("~/Images/...")

SON YORUMLAR