SharePoint çözümlerinde hata ayıklama

Visual Studio hata ayıklayıcısını kullanarak SharePoint çözümlerinde hata ayıklayabilirsiniz. Hata ayıklamaya başladığınızda, Visual Studio proje dosyalarını SharePoint sunucusuna dağıtır ve ardından Web tarayıcısında SharePoint sitesinin bir örneğini açar. Aşağıdaki bölümlerde, Visual Studio'da SharePoint uygulamalarında hata ayıklama açıklanmaktadır.

Hata ayıklamayı etkinleştir

Visual Studio'da bir SharePoint çözümünün hatalarını ilk kez ayıkladığınızda, bir iletişim kutusu web.config dosyasının hata ayıklamayı etkinleştirecek şekilde yapılandırılmadığını size uyarır. (web.config dosyası, SharePoint sunucusunu yüklediğinizde oluşturulur. Daha fazla bilgi için bkz . Web.config Dosyalarıyla Çalışma.) İletişim kutusu, hata ayıklamayı etkinleştirmek için projeyi hata ayıklamadan çalıştırma veya web.config dosyasını değiştirme seçeneği sunar. İlk seçeneği belirlerseniz proje normal şekilde çalışır. İkinci seçeneği belirlerseniz, web.config dosyası şu şekilde yapılandırılır:

  • Çağrı yığınını açma (CallStack="true")

  • Visual Studio'da özel hataları devre dışı bırakma (<customErrors mode="Off" />)

  • Derleme hata ayıklamasını etkinleştirme (<compilation debug="true">)

    Sonuçta elde edilen web.config dosyası aşağıdaki gibidir:

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
    <configuration>
        ...
        <SharePoint>
            <SafeMode MaxControls="200"
                CallStack="true"
                DirectFileDependencies="10"
                TotalFileDependencies="50"
                AllowPageLevelTrace="false">
                ...
            </SafeMode>
        ...
        </SharePoint>
        <system.web>
            ...
            <customErrors mode="Off" />
            ...
            <compilation debug="true">
            ...
            </compilation>
            ...
        </system.web>
        ...
    </configuration>

Değişiklikleri tersine çevirmek ve hata ayıklamayı devre dışı bırakmak için web.config dosyasında aşağıdaki XML'yi değiştirin:

  • Çağrı yığınını kapatma (CallStack="false")

  • Visual Studio'da özel hataları etkinleştirme (<customErrors mode="On" />)

  • Derleme hata ayıklamasını devre dışı bırakma (<compilation debug="false">)

F5 hata ayıklama ve dağıtım işlemi

SharePoint projenizi hata ayıklama modunda çalıştırdığınızda, SharePoint dağıtım işlemi aşağıdaki görevleri gerçekleştirir:

  1. Özelleştirilebilir dağıtım öncesi komutlarını çalıştırır.

  2. MSBuild komutlarını kullanarak bir Web çözümü paketi (.wsp) dosyası oluşturur. .wsp dosyası tüm gerekli dosya ve özellikleri içerir. Daha fazla bilgi için bkz . Çözümlere Genel Bakış.

  3. SharePoint çözümü bir çiftlik çözümü ise, belirtilen site URL'si için IIS uygulama havuzunu yeniden başlatır. Bu adım, IIS çalışan işlemi tarafından kilitlenen dosyaları serbest bırakır.

  4. Paketin önceki bir sürümü zaten varsa, .wsp dosyasındaki özelliklerin ve dosyaların önceki sürümünü geri alır. Bu adım özellikleri devre dışı bırakır, çözüm paketini kaldırır ve ardından SharePoint sunucusundaki çözüm paketini siler.

  5. .wsp dosyasına özelliklerin ve dosyaların geçerli sürümünü yükler. Bu adım, çözümü SharePoint sunucusuna ekler ve yükler.

  6. İş akışları için iş akışı derlemesini yükler. Derleme Konumu özelliğini kullanarak konumunu değiştirebilirsiniz.

  7. Kapsam Site veya Web ise, projenin SharePoint'teki özelliğini etkinleştirir. Çiftlik ve Web Uygulaması kapsamlarındaki özellikler etkinleştirilmemiştir.

  8. İş akışları için, iş akışını SharePoint Özelleştirme Sihirbazı'nda seçtiğiniz SharePoint kitaplığı, listesi veya sitesiyle ilişkilendirir.

    Uyarı

    Bu ilişkilendirme yalnızca sihirbazda İş akışını otomatik olarak ilişkilendir'i seçtiğinizde oluşur.

  9. Özelleştirilebilir dağıtım sonrası komutlarını çalıştırır.

  10. Visual Studio hata ayıklayıcısını Windows SharePoint Services işlemine (w3wp.exe) ekler. Proje türü Korumalı Çözüm özelliğini değiştirmenize izin veriyorsa ve değeri true olarak ayarlandıysa, hata ayıklayıcı farklı bir işleme (SPUCWorkerProcess.exe) eklenir. Daha fazla bilgi için Korumalı çözümle ilgili önemli noktalara bakınız.

  11. SharePoint çözümü bir grup çözümüyse JavaScript hata ayıklayıcısını başlatır.

  12. Web tarayıcısında uygun kitaplık, liste veya site sayfasını görüntüler.

    Visual Studio, her görev tamamlandıktan sonra Çıkış penceresinde bir durum iletisi görüntüler. Bir görev tamamlanamıyorsa, Visual Studio Hata Listesi penceresinde bir hata iletisi görüntüler.

SharePoint proje özellikleri

Özellik, site tanımlarını kullanarak sitelerin değiştirilmesini basitleştiren taşınabilir ve modüler bir işlev birimidir. Ayrıca, belirli bir kapsam için etkinleştirilebilen ve kullanıcıların belirli bir hedefi veya görevi gerçekleştirmesine yardımcı olan bir Windows SharePoint Services (WSS) öğeleri paketidir. Şablonlar özellik olarak dağıtılır.

Bir projeyi hata ayıklama modunda çalıştırdığınızda, dağıtım işlemi %COMMONPROGRAMFILES%\Microsoft Shared\web sunucusu extensions\14\TEMPLATE\FEATURESkonumundaki özellik dizininde bir klasör oluşturur. Özellik adları, TestProject_Feature1 gibi _Featurex biçiminde proje adına sahiptir.

Çözümün özellik dizinindeki klasörü bir özellik tanımı dosyası ve bir iş akışı tanım dosyası içerir. Özellik tanım dosyası (Feature.xml), projenin Özellik içindeki dosyaları açıklar. Proje tanım dosyası (Elements.xml), proje şablonunu açıklar. Elements.xmlÇözüm Gezgini'nde bulunabilir, ancak çözüm paketi oluşturulduğunda Feature.xml oluşturulur. Bu dosyalar hakkında daha fazla bilgi için bkz. SharePoint proje ve proje öğesi şablonları.

İş akışlarında hata ayıklama

İş akışı projelerinde hata ayıkladığınızda, Visual Studio iş akışı şablonunu (türüne bağlı olarak) kitaplığa veya listeye ekler. Daha sonra iş akışı şablonunu el ile veya bir öğe ekleyerek veya güncelleştirerek başlatabilirsiniz. Daha sonra iş akışında hata ayıklamak için Visual Studio'yu kullanabilirsiniz.

Uyarı

Diğer derlemelere başvurular eklerseniz, bu derlemelerin genel derleme önbelleğine ( GAC) yüklendiğinden emin olun. Aksi takdirde iş akışı çözümü başarısız olur. Derlemelerin nasıl yükleneceği hakkında bilgi için, bkz. Belge veya öğe üzerinde manuel iş akışı başlatma.

Ancak, dağıtım işlemi iş akışını başlatmaz. İş akışını SharePoint Web sitesinden başlatmanız gerekir. İş akışını, Microsoft Office Word 2010 gibi bir istemci uygulaması kullanarak veya ayrı sunucu tarafı kodu kullanarak da başlatabilirsiniz. SharePoint Özelleştirme Sihirbazı'nda belirtilen yaklaşımlardan birini kullanın.

Örneğin, iş akışının el ile başlatılabildiğini belirttiyseniz, iş akışını doğrudan kitaplıktaki veya listedeki öğeden başlatın. bir iş akışını el ile başlatma hakkında daha fazla bilgi için bkz. Belge öğesinde iş akışını el ile başlatma.

Özellik etkinlik alıcılarında hata ayıklama

Varsayılan olarak, bir Visual Studio SharePoint uygulamasını çalıştırdığınızda, bu uygulamanın özellikleri SharePoint sunucusunda sizin için otomatik olarak etkinleştirilir. Ancak, özellik Visual Studio tarafından etkinleştirildiğinde hata ayıklayıcıdan farklı bir işlemde çalıştırıldığından, özellik olay alıcılarında hata ayıklarken bu sorunlara neden olur. Bu, kesme noktaları gibi bazı hata ayıklama işlevlerinin düzgün çalışmayacağı anlamına gelir.

SharePoint'te özelliğin otomatik olarak etkinleştirilmesini devre dışı bırakmak ve Özellik Olay Alıcılarının düzgün hata ayıklamasına izin vermek için, hata ayıklamadan önce projenin Etkin Dağıtım Yapılandırması özelliğinin değerini Etkinleştirme Yok olarak ayarlayın. Ardından, Visual Studio'da SharePoint uygulamanızda hata ayıklamaya başladıktan sonra SharePoint'te özelliği el ile etkinleştirin. Özelliği etkinleştirmek için SharePoint'te Site Eylemleri menüsünü açın, Site Ayarları'nı seçin, Site Özelliklerini Yönet bağlantısını seçin ve ardından hata ayıklamaya normal şekilde devam etmek için özelliğin yanındaki Etkinleştir düğmesini seçin.

Gelişmiş hata ayıklama bilgilerini etkinleştirme

Visual Studio işlemi (devenv.exe), Visual Studio SharePoint konak işlemi (vssphost4.exe), SharePoint ve WCF katmanı arasındaki bazen karmaşık etkileşimler nedeniyle, oluşturma, dağıtma vb. sırasında oluşan hataları tanılamak zor olabilir. Bu tür hataları çözmenize yardımcı olmak için gelişmiş hata ayıklama bilgilerini etkinleştirebilirsiniz. Bunu yapmak için Windows kayıt defterinde aşağıdaki kayıt defteri anahtarına gidin:

HKEY_CURRENT_USER\Software\Microsoft\VisualStudio\11.0\SharePointTools

"EnableDiagnostics" REG_DWORD değeri zaten yoksa el ile oluşturun. "EnableDiagnostics" değerini "1" olarak ayarlayın.

Bu anahtar değerinin 1 olarak ayarlanması, Visual Studio'da çalışırken proje sistemi hataları oluştuğunda çıkış penceresinde yığın izleme bilgilerinin görünmesine neden olur. Gelişmiş hata ayıklama bilgilerini devre dışı bırakmak için EnableDiagnostics'i yeniden 0 olarak ayarlayın veya değeri silin.

Diğer SharePoint kayıt defteri anahtarları hakkında daha fazla bilgi için bkz. Visual Studio'daki SharePoint araçları için uzantılarda hata ayıklama.