Müşteri bakım takip programımız güncellenmiş olup güncel hali müşterilerimize yansıtılmıştır. Program, teknik servis üzerine faaliyet gösteren bütün firmalara hitap etmekte olup teknik servis programı olarak da nitelendirebiliriz. Teknik servis yazılımımız artık online (çevrimiçi) sisteme dahil edilmiş olup, Android/Iphone/Windows phone/ Blackberry sistemlerde ayırt edilmeksizin çalışmaktadır. Yine aynı zamanda müşteri bakım takip programımız diğer adıyla teknik servis programımız Tablet, Akıllı telefon, Masaüstü bilgisayar sistemleri üzerinden de erişim mümkündür. Kısaca internet olan her yerden
Gridview nesnemde bulunan değerlerden istediğim satırları yazdırmak için böyle bir yöntem kullanma gereği görmüştüm. Burada dikkat edilmesi gereken nokta: her döngüde satır sayısını bir artırılmalıdır. Aksi takdirde varsa yeni eklenecek satır olduğunda hataya düşer.
Try-Catch yapısını içinde Response.Redirect ile yönlendime yaptığımızda: sayfa yönlendirme yaptığımızda aldığımız hata mesajıdır. Bu hata yönlendirme koduna kod satırı işler daha catch bloğumuza girer. Bu işlem arka planda çok hızlı bir şekilde gerçekleştiğin için bunu son kullanıcı farketmez. Eğer hata loglaması yapıyorsanız bu durum veritabanında gereksiz satırların kaydına yol açacaktır. Bu durumun önüne geçmek için kullanım biçimi: Response.Redirect(“Sayfanizzz.aspx”, false); biçimindedir. Eğer false değerini vermezseniz otomatik olarak true algılanır.
Gridview de bulunan “Tutar” kolonumda para birimi bulunduğu için ilgili kolonu para birimi formatına ayarlama ihtiyacı oluştu. <%# String.Format("{0:C}", Eval("KolonAdiniz"))%> Faydalı olması dileğiyle
Visual Studio 2013 vs üst sürümlerinde Soluiton Explorer den herhangi bir sayfaya tek tıklamamız sonucu ilgili sayfayı form ekranımıza getirmektedir. Açmak istediğim sayfaya çift klik komutu ile açmak isteyen biri olarak bu durum benim canımı sıkması sonucu konuyu araştırdım. Araştırma sonucu bahsettiğim olayın sayfa ön izlemesi olarak geçtiğine denk geldim. Bunun çözümü: Tools => Options => Environment = Tabs and Windows kısmından resimdeki tikler olabilir (Bu anlatım visual studio 2010 üstü sürümler için geçerlidir. VS 2010 da ilgili sekme yoktur.)
Konuda bahsettiğim hatanın çözümünü araştırmam sonucu işe yarar bir çözüm önerisi bulamadığım için böyle bir blog yazısı yazma gereği gördüm. Sorunun çözümünde kalıplaşmış cevaplardan olan web.config sayfasına: enableEventValidation=”false” enableViewStateMac=”false” … kodunu eklediğim halde sorunum çözülmemişti. Bunun üzerine http://www.a2zmenu.com/utility/machine-key-generator.aspx adlı siteden machine key üretim bunu web.config sayfama eklemem sonucu resim olarak eklediğim sorunu gidermiş oldum. Eğer web host’unuz firma sunucusunda değilde kendi sunucunuzda ise şu yöntemi de deneyebilirsiniz: IIS üzerinden Web Sitenizi seçin ve Machine Key menüsüne giderek => Generate keys => Apply
Konuda bahsettiğim soruna çözüm olarak alternatif çözüm yönleri bulmam sonucu paylaşmak istedim. JavaScript’lerde sıkıntı yaşadığım için bazı yöntemler benim sistemimde sorun çıkarmıştı. Bu gibi nedenlerden dolayı çözüm hususunda uzun süre efor sarfetmiştim. Umarım benim gibi arkadaşlara yardımcı olur. Yöntem 1 (Önerdiğim) protected void btnYazdir_Click(object sender, EventArgs e) { string Parametre1 = lblMusteriID.Text; ScriptManager.RegisterStartupScript(Page, typeof(Page), "OpenWindow", "window.open('/SayfaAdiniz.aspx?Musteri=" + parametre_1 + " ');", true); } Yöntem 2 Response.Write("<script>"); Response.Write("window.open('/SayfaAdiniz.aspx?Musteri=" + gridListe.DataKeys[Convert.ToInt32(e.CommandArgument)].Value.ToString() + " ','_blank')"); Response.Write("</script>"); Yöntem 2 de ID yi gridden aldığım için ilgili alanı göstermek amacıyla silmedim. Faydalı olması dileğiyle
Bu yazımda konuda da bahsettiğim gibi asp.net aracı olan gridview in rowdatabound özelliğinden bahsedeceğim. Öncelike neden bu event a ihtiyaç duyduğu açıklayacak olursam: grid de ilgili satırdaki veriye göre renklendirme işlemi yapmak istediğim için bu olayı kullandım. Faydalı olması ümidiyle. protected void gridListe_RowDataBound(object sender, GridViewRowEventArgs e) { if (e.Row.RowType == DataControlRowType.DataRow) { switch ((e.Row.FindControl("lblHareketTuru") as Label).Text) { case "Stok Girişi": e.Row.BackColor = Color.Green; break; case "Stok Çıkışı": e.Row.BackColor = Color.Yellow; break; } } }
Visual Studio 2013 asp.net de uygulama geliştirirken karşılaştığım bir hatayı ve çözümüne değineceğim: Çözümü: web.config sayfanıza <system.web> <pages enableEventValidation="false" validateRequest="false" enableViewStateMac="false" > </pages> </system.web> kod bloklarını eklemektir.
Ajax Calender Extender Türkçe Formatı: <asp:ToolkitScriptManager ID="ToolkitScriptManager1" EnableScriptGlobalization="true" runat="server"></asp:ToolkitScriptManager>