Category Archives: SharePoint-fejlesztési

"Egy vagy több mező típusú nincs megfelelően telepítve egyik oka”

Hogy volt egy kicsi csípés tegnap kijelzőnek, hogy egy listát CAML lekérdezése nem.  A változás csináltam., kikerül és kapott találatot hiba:

Váratlan hiba történt a három nap Outlook-Időjárás kijelző. Lépjen kapcsolatba a rendszergazdával.. Egy vagy több mező típusú nincs megfelelően telepítve. Ugrás a mezőket törölni szeretné, a lista beállításai lap.

Én néző oddball egy másik kérdés korábban, így azt nem azonnal kapcsolatba CAML a lekérdezés a hiba, amely a SharePoint volt jelentési nekem.  Én tett egy gyors bing-keresés és és alapít ez hasznos blogbejegyzést által Homokkal beszórt Nahta  (http://snahta.blogspot.com/2009/01/one-or-more-field-types-are-not.html).

Itt van a rossz a lekérdezés:

lekérdezés.Lekérdezés ="<Ahol><És><NEQ><A FieldRef neve = "Abbr" /><Érték típusa = "Szöveg">SFNY</Érték><A FieldRef neve = "Abbr" /><Érték típusa = "Szöveg">SFIS</Érték></NEQ></És></Ahol>";

Itt van rögzített:

lekérdezés.Lekérdezés ="<Ahol><És><NEQ><A FieldRef neve = "Abbr" /><Érték típusa = "Szöveg">SFNY</Érték></NEQ><NEQ><A FieldRef neve = "Abbr" /><Érték típusa = "Szöveg">SFIS</Érték></NEQ></És></Ahol>";

Így, az erkölcsi a történet van: Győződjön meg arról, hogy a CAML helyes-e, vagy kaphat a oddball hiba.

Subscribe to my blog.

Kövesse nekem Twitter http://www.twitter.com/pagalvin

</vége>

SharePoint 2010 Megragadt-ban "üzembe helyezése oldat” Állapot

Én használt a PowerShell egy SharePoint-farmot a megoldás üzembe helyezéséhez (h/t:  Corey Roth és az ő Webnapló-hozzászólás). 

Majd elment a központi admin, Rendszerbeállítások és a "Manage farm megoldások" elérhető üzembe helyezéséhez, a gazdaság és az én (enyhe) döbbenet, kapott megragadt-az „üzembe helyezése".

Láttam már ezt a kérdést a MSDN fórumok sokszor jön, így nagyon ideges voltam.  Én keresett körül egy darab és alapít ez hasznos cikk (a látszólag unattributed személy http://www.resolutionsnet.co.uk/).  Én törölve, a feladat, és mikor én csattant a oldatba, Ez azt mondta, hogy ez már sikeresen telepítette a megoldás három a négy szerver, a farm.

Elmentem a tévelygő szerver, Az időzítőszolgáltatás betömött és restarted ez.  A Windows server valóban azt mondta, hogy a szolgáltatás nem válaszolt a parancs, Szóval azt mondja, hogy beteg volt.

ezúttal, Mikor mentem vissza a központi admin, Voltam képes-hoz felfejlődik ez-val nincs probléma.

Remélhetőleg ezt a kis info segít néhány, a nap egy bind.

</vége>

Subscribe to my blog.

Kövesse nekem Twitter http://www.twitter.com/pagalvin

Hiba a nap: "Nem adható hozzá a megadott kódösszeállítás a GAC”

Már harcok egy kicsit a visual studio 2010 a a sp2010-oldat és volt szerzés ez hiba:

Hiba történt a telepítési lépés megoldás hozzáadása: Hiba: A megadott kódösszeállítás nem adható hozzá a globális összeállítás-gyorsítótár: YourAwesomeDLLThat IAmJustNotGoingToInstallRightNow.dll

Elmentem a GAC maga (c:\windowsassembly) Próbálja ki, és távolítsa el, és kapott egy "a használatban lévő fájl" hiba.

Én tett egy iisreset, Majdnem letöltött Sysinternals, Megálltam a időzítő szolgáltatása, Services... Végül, Csak zárt, és újra megnyitottuk a visual studio, maga, és én végül képes bezárásához.

</vége>

Subscribe to my blog.

Kövesse nekem Twitter http://www.twitter.com/pagalvin

Gyors és egyszerű: Hibakeresési VS 2010 Megoldás központi telepítési

A Visual Studio 2010 kemény hibakeresési hibát jelez a telepítés során néhány alkalommal.  A gyors és egyszerű nagyon durva hibakeresési módja a saját elnevezett kivételek dobja.  A kimeneti konzolban Visual Studio akarat mutat.

Ez a kód bit fontolóra:

image

Ha ezt a szolgáltatást a webes alkalmazás webkiszolgálóktól, webhely null lesz.  Ha megpróbálod, és egy ingatlan telek referencia, kapsz a kétértelmű hiba:

Hiba történt a telepítési lépés megoldás hozzáadása: Tárgy ajánlás nem készlet-hoz egy objektum egy példányát.

Azonban, Ha dob egy új kivétel, és egy karakterláncot adja át a kivitelező, valamivel több hasznos üzenetet kap:

image

Ez a nyers technika, de elég gyors és egyszerű.

</vége>

Subscribe to my blog.

Kövesse nekem Twitter http://www.twitter.com/pagalvin

Időzítő feladat FeatureActivated, és a szolgáltatás hatóköre

Iâ működő-val néhány kód, amit valaki átadta nekem egy időzített feladatot.  Tehát én-hoz ír ez ő még nem biztosított a tényleges szolgáltatás aktiválás kód, természetesen.  Azt vette igénybe a Andrew Connell híres blogbejegyzést a témában.

Én használ a Visual Studio 2010 és telepítési tartott hiányában egy hiba "Hiba történt a telepítési lépés"Hozzáadás megoldás": Objektumhivatkozás nincs beállítva egy objektum egy példányát."

Volt véve saját kódot is szó szerint.  Volt hatókörkezelést, a szolgáltatást, hogy a webalkalmazás szint, Amint:

image

Ennek eredményeként, a vevőnek küldött tulajdonságok vannak a webes alkalmazás, nem egy webhelycsoportban.  A végén, a kód úgy néz ki, mint ez:

public override void FeatureActivated(SPFeatureReceiverProperties tulajdonságok)
{

    // Az alábbi web app hatóköre funkciók nem, Ez vezet a kétségbeesés Mosoly
    // SPSite site = tulajdonságok.Feature.Parent, SPSite;

    SPWebApplication wa = tulajdonságok.Feature.Parent, SPWebApplication;

    Ha (WA == null) egy új kivétel dobja("a webapp2 értéke null.");

    foreach (Wa SPJobDefinition munkát.JobDefinitions)
    {

        próbálja meg
        {
            Ha (feladat.Nevét == List_JOB_NAME)

                feladat.Delete();
        }
        fogási (Kivétel e)
        {
            egy új kivétel dobja("2. méretjelző");
        } // kivétel e fogási
    }

    // a feladat telepítése

    WeatherForecastTimerJob-weatherForecastTimerJob =
        új WeatherForecastTimerJob(List_JOB_NAME, WA);

    SPMinuteSchedule ütemezése = új SPMinuteSchedule();
    ütemezés.BeginSecond = 0;
    ütemezés.EndSecond = 59;
    ütemezés.Interval = 5;
    weatherForecastTimerJob.Schedule = ütemezés;
    weatherForecastTimerJob.Update();

}

Leszakadás kulcs az, hogy ha a szolgáltatást a webes alkalmazás adatbázisokban, a SPFeatureReceiverProperties, a szolgáltatás a címzett részére átadja a SharePoint web app szintű paraméterrel rendelkezik.  Andrew's old blog bejegyzés azt feltételezi, hogy a webhelycsoport adatbázisokban.

</vége>

Subscribe to my blog.

Kövesse nekem Twitter http://www.twitter.com/pagalvin

Hol van a Microsoft.SharePoint.ApplicationPages.Administration.dll?

Én adták, hogy Microsoft.SharePoint.ApplicationPages.Administration.dll egy visual studio projektet.  Ez elvitt én egy kicsit közben megtalálni azt, és gondolkodás én akar osztozik.  Az én-m környezet, van elhelyezett-on:

c:\program filescommon filesmicrosoft sharedweb server extensions14configadminbin

</vége>

Subscribe to my blog.

Kövesse nekem Twitter http://www.twitter.com/pagalvin

CodePlex projekt – SP2010 Explorer

Részeként-ból folyik annak érdekében, hogy a műszaki alacsony szintű részletek SharePoint 2010, Én már létrehozott egy "SharePoint Explorer"kedves eszköz.  Az ötlet nem új.  Régebben ezt a projektet több mint egyszer: http://sharepointexplorer.codeplex.com/.  Az én elképzelésem az, hogy hozzon létre egy SharePoint-verzió, amit használ összekapcsolt kijelzők az alacsony szintű részleteinek megjelenítéséhez, hogy az objektum modell tud nyújtani. 

Ez a blog felad szolgál mindkettő értesítésfájl a projekt, valamint a hívás az önkéntesek.  Ha-a ' érdekelt-ban ezen a projekten dolgozó, hadd tudjam meg, e-mailen keresztül (Galvin.Paul@gmail.com) és mi majd dolgozni, hogy ki.

Itt van a projekt: http://sp2010explorer.codeplex.com/

</vége>

Subscribe to my blog.

Kövesse nekem Twitter http://www.twitter.com/pagalvin

Az ASP-ben TreeNodeBinding együtt dolgozik.NET Treeview vezérlő

Már dolgozik a mi Remélem lesz, a hamarosan kiadott CodePlex egy szép integrált kicsit beszélgetni egymással keresztül szolgáltató-fogyasztó kapcsolatok feltárása a SharePoint-webhely alatt a borít alkalmazásában kijelzők projekt.  (Ez minden bizonnyal megtörtént, mielőtt, de ez a tanulás projekt, mint bármi más).  Ez azt jelentette, hogy a csere, a SharePoint, a windows explorer nézet 2010 dokumentumtárak.

A kód hívja le a SPWeb szokásos rekurzív, és SPList egy adott indítását pontjára.  Az objektum, hogy nem minden a felsővezetéket épít fel egy XML karakterlánc, hogy néz ki valami ilyesmi:

<sitecollection url =’http://demo2010a:9090′>
 
<Web
     title = "Helló világ elvű" 
     Sablon =' egy webhelyet a csoport gyorsan rendezheti., Szerző, és információmegosztás, BLA BLA BLA ">

     <lista
        title ='BCC_Health_Services_FAQs’
        Sablon ='CustomList’
       
listid =’http://demo2010a:9090/helloworldsandbox[delim]1e02b001-3cb2-4f17-b63d-7809e86b4174′>
    
</lista>

     <lista
        title = "BCC_Notifications" 
        Sablon = "CustomList" 
        listid =’
http://demo2010a:9090/helloworldsandbox[delim]5a5a13d1-877 c-41 c 0-9063-b9612be80d5e’>
     </lista>

  </Web>

</sitecollection>

Arra számítok tiszta fel, hogy előtt minden XML mondta, és kész.

Szeretne végső soron a fel és a Treeview vezérlőben kap ezt az információt.  Nem pontosan a föld törése megtöm.

Én elvitt-ra itt kihívás volt a fanézetben csatlakozni egy XML-adatforrás-vezérlő helyett manuálisan kiépítése én treenodes, ahogy azt a fastruktúrán.  Én tett ez részben, mert én vagyok szándékosan hogy dolgot magam nehezebb (Ez a tanulás-projekt után minden) és részben, mert nekem van ez homályos fogalmát, hogy a fa csomópontjai kiépítése, ahogy azt a fastruktúrán nem jó ötlet a hosszú távú.

Ez a megközelítés problémája, hogy a Treeview vezérlő nem tud jó az attribútumokról, mint "list" vagy a "web" érdekes csomópontján így e kibocsátás jeleníti meg alapértelmezés szerint:

 

image

Ez nem hasznos.  Ez az, ahol a TreeNodeBinding osztály segít.  Tud használ ez-annak érdekében, hogy a Treeview vezérlő mondja meg, hogyan kell értelmezni az XML.  Itt van egy példa:

tnb = új TreeNodeBinding();
tnb.DataMember = "lista"; // Ez a hely XML-címke.
tnb.TargetField = "listid";
tnb.ValueField = "cím";
tnb.ToolTipField = a "Sablon";

A kötés mondja a TreeView vezérlő, amely a ha talál egy <lista> az XML-csomópont, TargetField kötései alkalmazni, ValueField és ToolTipField.  A május app, Ezek a következőképpen Térkép:

  • TargetField: Amikor valaki rákattint egy csomópont-érték, Ez az, amit kapsz a SelectedNode.Value.  Ez azonban nem kell zavaros with…
  • ValueField: Ez az, amit szeretne megjeleníteni a felhasználó számára a Treeview.
  • ToolTipField: Az XML-fájl, amely helyi súgóként kívánt értékét.

Adjunk hozzá, hogy TreeNodebinding a fanézetben adatkötéseinek, és kap kimenetet, mint ez:

 

image

Én is több minden e továbbra is az a projekt, és végül tesz ez-ra Codeplex.

</vége>

Subscribe to my blog.

Kövesse nekem Twitter http://www.twitter.com/pagalvin

Kapcsolódás a szöveg mező szűrőket az egyéni kijelző

Azt akartam, hogy az információt kapják egy szöveg mező szűrőt a SharePoint 2010 ba az én-m egyéni kijelző.  Próbáltam használ MSDN-cikkben de a cikk alapján van vagy törött vagy én csak nem következő azt megfelelően.

Van egy kicsi több kereső Mike Smith MSDN-hozzájárulás itt (http://social.msdn.microsoft.com/forums/en-us/sharepointdevelopment/thread/72F1732A-7F93-441E-8644-2E82BBB153D9).

Van egy csomó dolog, ott a összekapcsolható kijelzőt, de Mike cikk olyan egyszerű, mint ez gets.

</vége>

Subscribe to my blog.

Kövesse nekem Twitter http://www.twitter.com/pagalvin

Gyors és egyszerű: E-mailt Gmail SMTP-kiszolgáló a .NET C#

Ez nem pontosan egy új témát, de mikor én szükséges-hoz csinál ez, Találtam egy csomó "Miért nem ezt a munkát nekem", és nem túl sok közvetlen választ. Remélem valaki talál ez hasznos.

A következő darab-ból kód küld egy e-mailt a saját gmail-fiókot kell csinálni, mellékletekkel:

használatával System.Net.Mail;
használatával System.Net;

NetworkCredential loginInfo = új NetworkCredential("[Az én-m Gmail Azonosítás]", "[Az én-m Gmail-jelszó]");
Levélüzenet msg = új Levélüzenet();
msg.From = új MailAddress("[M Gmail AZONOSÍTÁS]@gmail.com");
msg.To.Add(új MailAddress("a paul.galvin@arcovis.com"));
msg.Tárgy = "Vizsgálati infopath dev téma";
msg.Body = "<HTML><szerv><erős>Egy erős üzenetet.</erős></szerv></HTML>";
msg.IsBodyHtml = igaz;

foreach (karakterlánc aFile a NIPFD.GetAttachmentNamesAndLocations())
{
    msg.Attachments.Add(új Melléklet(aFile));
} // Mellékletek hozzáadása.

SmtpClient Client = új SmtpClient("smtp.gmail.com");
ügyfél.EnableSsl = igaz;
ügyfél.UseDefaultCredentials = hamis;
ügyfél.Hitelesítő adatok = loginInfo;
ügyfél.Port = 587;
ügyfél.EnableSsl = igaz;
ügyfél.Küldés(msg);

Néhány kulcsfontosságú, hogy a bits lassult le rám, és egyéb a észrevételeket / jegyzetek:

  • Az első sorban, amely létrehozza a loginInfo objektum kell használni a gmail azonosítás megfosztott "@gmail.com”. Így, Ha az én-m gmail elektronikus levél cím "a sharepoint@gmail.com"és az én-m jelszó"xyzzy", majd a vonal nézne:

NetworkCredential loginInfo = új NetworkCredential("sharepoint", "xyzzy");

  • Az én-m gmail-fiókot SSL használata van beállítva, és hogy nem volt probléma.
  • Van néhány ellentmondó információt ott melyik portot kell használni. Én használt a port 587 és ez munkás finom értem.
  • Az én esetemben, Is szükséges, mellékletek küldése. A NIPFD tárgy birtokol egy módszer, hogy tudja, hol vannak a mellékletek. Ez visszatér a teljes elérési út (pl. "c:\tempattachment1.jpg". Az én-m teszt, Volt két mellékleteket, és mindkettő munkás finom.

Én használt a visual studio 2008 ezt a kódot írni.

</vége>

Subscribe to my blog.

Kövesse nekem Twitter http://www.twitter.com/pagalvin

Technorati Tags: ,,,