Google da ara

 

Eylül 2010
Pts Sal Çar Per Cum Cts Paz
« Ağu    
 12345
6789101112
13141516171819
20212223242526
27282930  

Google Reklamları

Dil Seçimi

Bağış yada Ödeme

YYToolkit – Sql Management Studio Lite

Sql 2008 ile birlikte management studio nun da hard diskde kapladığı yerde bir hayli arttı. İnternette barınan sunucunuza Sql sorgusu yapabilmek için ya management studionuz olması gerekiyor yada kendi yazdığınız bir program aracılığı ile bu işlemi yapabilirsiniz, biraz daha expert olduğunuzda sql command prompt ile de sorgu çalıştırabilirsiniz ancak çoğu zaman ufak bir sorgu çalıştırmak için management studio kurmak, hard diskde kapladığı yer bakımından oldukça maliyetli olabiliyor.  Bu gibi durumlarda yardımcı olması için Sql Management Studio Lite edition adında ufak bir programcık geliştirdim.

Uygulama çok basit bir şekilde herhangi bir db server  a bağlanıp serverdaki db leri ve içerisindeki tabloları listeliyor. Burdan tabloları görüp sorgu çekebiliyorsunuz.

İndirmek için :

YYToolkit – Sql Management Studio Lite (ClickOnce)

TFS Kurulumu – Sql 2008 Reporting Services hatası

Tfs kurulumu ilgili dökümanı adım adım uygulayarak yaptığınızda genelde bir sorun çıkmıyor, ancak bir şekilde kullanıcılarla ilgili gerekli ayarları yapamadığım için , tfs kurulumu tamamlanıp yeni bir proje oluşturmaya çalıştığım anda aşağıdaki hatayı alıyordum.

—begin Exception entry—
Time: 2009-11-22 13:39:02Z
Module: Initializer
Event Description: TF30207: Initialization for plugin “Microsoft.ProjectCreationWizard.Reporting” failed
Exception Type: Microsoft.TeamFoundation.Client.PcwException
Exception Message: Insufficient permissions to create a new SQL Server Reporting Services at TFSAPPSERVER.
Exception Details: The permissions granted your user name and ID on the SQL Server Reporting Services at TFSAPPSERVER
do not allow you create a new project. You must be granted specific permission
by the server administrator.
Stack Trace:
at Microsoft.VisualStudio.TeamFoundation.RosettaReportUploader.CheckForProjectFolder(PrivateData data, String projectName, ProjectCreationContext context)
at Microsoft.VisualStudio.TeamFoundation.RosettaReportUploader.Initialize(ProjectCreationContext context)
at Microsoft.VisualStudio.TeamFoundation.EngineStarter.InitializePlugins(MsfTemplate template, PcwPluginCollection pluginCollection)
–   Inner Exception   –
Exception Type: Microsoft.TeamFoundation.TeamFoundationServerUnauthorizedException
Exception Message: TF30063: You are not authorized to access TFSAPPSERVER.
Stack Trace:
at Microsoft.TeamFoundation.Client.TeamFoundationSoapProxy.ThrowIfUnauthorized(HttpWebResponse response)
at Microsoft.TeamFoundation.Client.TeamFoundationSoapProxy.GetWebResponse(WebRequest request)
at System.Web.Services.Protocols.SoapHttpClientProtocol.Invoke(String methodName, Object[] parameters)
at Microsoft.TeamFoundation.Proxy.Reporting.ReportingService.ListChildren(String Item, Boolean Recursive)
at Microsoft.VisualStudio.TeamFoundation.RosettaReportUploader.CheckForProjectFolder(PrivateData data, String projectName, ProjectCreationContext context)
– end Inner Exception –
— end Exception entry —

Hata nın SPN denilen birşeye benim reportservice kullanıcımın sahip olmaması neden oluyordu. Ancak bunu anlayana kadar domain admin olan kullanıcımı local tfs makinesi ve ilgili groupların tümüne yetki vermiştim. Olmamasının tek nedeni yetki eksikliği değil spn eksikliğiymiş :) .

Bunuda şurdan anladım :

Using RSWindowsNegotiate will result in a Kerberos authentication error if you configured the Report Server service to run under a domain user account and you did not register a Service Principal Name (SPN) for the account. For more information, see Resolving Kerberos Authentication Errors When Connecting to a report server in this topic.

Daha sonra şurdaki çözümü uyguladım :

Use NTLM. NTLM will generally work in cases where Kerberos authentication fails. To use NTLM, remove RSWindowsNegotiate from the RSReportServer.config file and verify that only RSWindowsNTLM is specified. If you choose this approach, you can continue to use a domain user account for the Report Server service even if you do not define an SPN for it.

Gidip RSReportServer.config dosyasını bulup ordaki <RSWindowsNegotiate/> tag ini sildim. Ve sorun giderilmişti.

Kaynak : http://msdn.microsoft.com/en-us/library/cc281253.aspx#proxyfirewallRSWindowsNegotiate

Visual Studio – AutoRecovery Özelliği

VS üzerindeki auto recovery özelliği, normal şartlarda bir yazılımcının hayatını kurtarması gerekirken nedense şimdiye kadar benim hayatımı söndürmekten öteye gidememiştir. Çok dikkatli kullanılması gereken bir özelliktir: size hangi tarihteki kurtarma bilgisine dönmek istediğini gösterir ve siz bunu bir şekilde kontrol etmeden recover derseniz, yüksek ihtimalle muhtemel günler, belkide aylar öncesinin bir kopyasını geri döndürecektir.

Size lazım olan eğer son kaydettikleriniz ise bu özelliğe güvenmeyin CTRL + S yapmaya üşenmeyin.

#region kullanımı

#region kodların daha okunabilir bloklar haline getirilmesi amacıyla kullanılan bir keyword dur. Bir class yazdınız ve bu class içerisinde private field lar ve public propertyleriniz var ayrıca static methodlarda yine mevcut bunlardan her bir grubu mantıksal olarak gruplamak amacıyla #region ları kullanırız. Bu keywordler derleme anında dikkate alınmazken, geliştirme aşamasında takım arkadaşlarınıza ve size büyük kolaylık sağlar. Ayrıca Visual studio tarafında en büyük kolaylıklarından bir tanesi yanında bir (-) işareti çıkartması ve bunu collapse (daraltmak) edebilmeniz.

Örnek kullanım:

public class Kitap:IKoseliDeneme
{
#region Fields
private int _TestField = 0;
private bool _IsTestClass = true;
private string _BlogAddress = "www.yilmazyavuz.com";
#endregion Fields

#region Properties
public bool IsThisAProperty { get; set; }
public int TestProperty { get; set; }
#endregion Properties

public string this[int sayfaNo]
{
get
{
return (sayfaNo * 2).ToString();
}
set
{
//bişeyler oluyor
}
}

#region Constructors
public Kitap()
{

}
public Kitap(int sayfaSayisi)
{
//bişeyler oluyor
}
#endregion Constructors
}

Visual Studio da Collapse edilmiş hali:
regionornek

#endregion dan sonra tanımı tekrar yazmanız gerekli değildir. Ancak kullanım kolaylığı açısından binlerce satır içeren bir region ın sonunu daha kolay bulabilmek açısından önemlidir.
Visual Studio üzerindeki snippet ı region dır.

Visual Studio 2010 Online Templates

Visual studio ile gelen standart project – item template lerin yanı sıra vs2010 da çok kolay erişilebilen bir Online template sekmesi eklenmiş. Böylece microsoft un internet üzerinden dağıttığı ücretsiz template lere kolay bir şekilde sahip olabiliyor ve saniyeler içerisinde o template ile projeler oluşturabiliyoruz.

Vs2010 u açalım ve File Menüsünden New project e tıklayalım.

New Project Dialog

Gelen pencereden sol kısımda altta bulunan Online Templates kısmına tıklayalım. Ve gelen template ler içerisinden proje oluşturmak istediğimizi seçip OK butonuna tıklayalım. İlk yükleme ise kısa bir süre içerisinde internet üzerinden indirerek size kullanım şartlarını içeren bir dialog açacaktır. Burada Install demeniz yeterlidir. Böylece kolay bir şekilde saniyeler içerinde yeni template imizi kullanarak bir proje oluşturmuş bulunmaktayız.

New File Dialog - Create

Snippetlar ve kullanımı

Visual Studio ile kod yazarken işimizi kolaylaştıracak özelliklerden biriside Snippet lardır. Bir keyword yazarak çift tab a bastığınızda size yazmak istediğiniz kod un şablonunu çıkartarak kolay bir şekilde yazmanızı sağlar.
Örnek olarak bir for döngüsü oluşturmak istiyorsunuz. kod içinde for yazıp tab tuşuna iki kere basın ve şablonunuz karşınızda. Bu şablonda verilen default değerleri tab ile gezinerek değiştirebilirsiniz. En son işiniz bittiğinde asıl kodu yazmak istediğiniz yere gelmek için Enter a basmanız yeterli olacaktır.

Çok sık kullanılan snippetlardan bazıları :

  • for
  • foreach
  • prop
  • class
  • ctor
  • if
  • while
  • switch