26 Şubat 2015 Perşembe

Clickonce Application nedir?

Bu publish tekniği uygulamanızı kullanan kişilerin versiyon kontrollerinin otomatik yönetimini sağlar.
Uygulada clickonce teknolojisini kullanarak .bap, .exe, .dll kaynaklı dosyalar yayınlanmaktadır.

Bir Clickonce uygulamasını 3 farklı şekilde yayınlayabiliriz.

Bir wpf uygulaması için clickonce publish örneği vereceğim;
Solution Explorerda  proje ismine sağ tıklayıp Security sekmesinde  clickonce ayarları açılır
Publish sekmesinde Updates alanı açılarak versiyonlar seçilir. Burada otomatik veriyonlarma checklenir
 Update location
Z:\BELGELERIM\CFBXSGB\My Documents\Desktop\Untitled.png
Prerequities sekmesinde Microsoft .NET Framework 4 Client Profile (x86 and x64) ve Windows Installer3.1 seçenekleri check edilir.
Options seçeneğinden description böülümünde Publisher name ve Product Name alanları doldurulur.

Ve son olarak publish edildiğinde artık uygulamanız ClickOnce Application olarak sunuma hazır olacaktır.

Burada önemli olan son kullanıcıların programı update location üzerinden kurmalarıdır. Ve alışılmış kullanım tecrübeleriyle direkt ..exe dosyalarını çalıştırmamalılar. <proje_adi>.application dosyası ile kurulum yapılmalıdır.

TFS client versiyon hatası

Çoklu developer ortamında, kod içinde TFS kullanarak versiyonlama yapıyorsanız, aşağıdaki hata ile karşılaşmanız çok muhtemel.

could not load file or assembly 'Microsoft.TeamFoundation.client, Version=8.0.0.0, Culture=neutral, PublicKeyToken=b03f5f11d50a3a' or one of its dependencies. The system cannot find the file specified.

Bu sorun sizin çalışma esnanızda başka bir bir ortamda aynı local workspace'in oluşmasındn kaynaklanmaktadır. Çözüm olarak; 
Kod içinde kullandığınız user ile Visual Studio içinde TFS'e login olarak ekran üstünde workspaces alanını seçip tümünü silmektir.

Sql management reset for login info

Aşağıda versiyonları verilen Sql managementlara ait dizini verilen dosyaları sildiğinizde, login ekranının geçmişine zamanla yığılan verilerden kurtulmuş olursunuz.

SQL Server Management Studio 2014 -->C:\Users\%username%\AppData\Roaming\Microsoft\SQL Server Management Studio\12.0\SqlStudio.bin

SQL Server Management Studio 2012  --> C:\Users\%username%\AppData\Roaming\Microsoft\SQL Server Management Studio\11.0\SqlStudio.bin

SQL Server Management Studio 2008  --> C:\Users\%username%\AppData\Roaming\Microsoft\Microsoft SQL Server\100\Tools\Shell\SqlStudio.bin


10 Temmuz 2014 Perşembe

Error=” The calling thread must be STA, because many UI components require this.”

İşlemini tamamlamamış bir fonksiyon içinden başka bir sayfaya açmaya çalıştığımda bu hata ile karşılaştım. Class'ın içinde başka fonksionlarda ya da constructor da bu hata ile karşılaşmıyorum. 

Aşağıdaki kod bloğu ile çözüme ulaştım.


  void openOtherPage(Object source, EventArgs data)
{
System.Windows.Application.Current.Dispatcher.Invoke(new Action(() =>
            {
                WNewPage pageView = new WNewPage(model);
                pageView.Show();
            }));
}

24 Kasım 2013 Pazar

Mail Gönderimi

.net' te mail gönderimi için öncelikle using bölümüne aşağıdaki iki satırı eklemeniz gerekmektedir.

using System.Net;
using System.Net.Mail;

using alanını güncelledikten sonra aşağıdaki fonksiyon ile mail gönderimi yapabilirsiniz.

public bool SendMail (string fromMail, string password, string toMail, string subject, string mailBody)
{
MailMessage message = new MailMessage(); message.From = new MailAddress(fromMail);
message.To.Add(new MailAddress(toMail));
message.Subject = subject;
message.Body = mailBody;
message.IsBodyHtml = true;
// finaly send the email: SmtpClient smtp = new SmtpClient(); smtp.Host = "smtp.gmail.com"; //gmail adresleri için geçerlidir.
smtp.Port = 587; //gmail adresleri için geçerlidir. smtp.Credentials = new System.Net.NetworkCredential ( fromMail, password);
smtp.EnableSsl = true; smtp.Send(message);
}

30 Eylül 2013 Pazartesi

Excel Output Türkçe Karakter Sorunu

Excel çıktısı almak için gridview barındıran bir aspx sayfası oluşturmuştuk, ancak türkçe karakter sorunları ile karşılaştık.

Sırasıyla çözüm önerilerini ekliyorum.

İlk etapta aspx.cs dosyamızda response için tanımlamalar yapmak bazı datalarda sorunlarımızı çözdü. (neye göre datalarda sorun yaşadığımızı tam çözemedik. Veri tabanından bozuk gelmeyen ve aynı tablodan aldığımız veriler hepsi.)

Response.ContentEncoding = System.Text.Encoding.GetEncoding("windows-1254");


ikinci alternatifiniz aşağıda olduğu gibi mimetype eklemek olabilir;

String mimeType = "application/vnd.ms-excel;charset=ISO-8859-9";
        HttpContext.Current.Response.ContentType = mimeType;




Bizim tüm datalardaki sorunumuzu çözen yöntem ise meta eklemek oldu;

<head runat="server">
<title>Untitled Page</title>
    <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-9">
</head>





18 Temmuz 2013 Perşembe

Running Generate Script

Dosya boyutu büyük olan generate scriptleri direk management studio üzerinde çalıştırmak sıkıntı yaratır. Tabloların ayrı ayrı scriptini almak bazı durumlarda çözüm olabilir ama bilhassa tek tabloda aşırı veri olduğunda alternatif yollara başvurmak gerekir.
Bu yollardan biri command prompt üzerinde dosya yollarını ve bağlantı bilgilerini güncelleyerek çalıştırmaktır.

sqlcmd -S sunucu -U sa -P sifre -i "C:\script.sql" -o "C:\Gunluk.log"