Kategoriaj Arkivoj: SharePoint Evoluado

HTTP 406 Eraro Kiam Uzanta Angular $http.Akiras #Kontra? SharePoint RIPOZA Fino Punktoj

Ĝisdatigo: Marc AD ndersson atentigis #?i tiu grandan pecon de info: Http://Blogoj.Oficejo.Com/2014/08/13/json-lumo-subteno-ripozo-sharepoint-api-liberigita/. Kiu klarigas tre :).

Kiu povas esti la plej malbona titolo de bloga #po?to iam ajn! Anyhoo.

Mi tipe faras ĉiujn de mia prototyping kontraŭ O365 okazo. Mi havas mian propran okazon por ke mi ne devas esti maltrankvilita pri influanta iun ajn alia. Kiel flankenmetite ?? Memoras kiam nin vokas portita #?irka? virtualaj #ma?ino sur niaj tekkomputiloj kun MUSKO ?? SQLa Servilo, IIS, Decidanta Hyper-V #kontra?. VMWare? Anyhoo?

Mi evoluigis app uzanta Angular en #?i tiu medio kiu faras, Inter aliaj aferoj, Tio ĉi:

$Http.Akiras(ServerUrl)
.Sukceso(Funkcio(Datumoj, Statuso, Titoloj, Config) {

Var getLinksResponse = datumo;

GetLinksResponse.Valoro.ForEach(Funkcio(TheResult) {

// Kaj tiel plu kaj do #?a?mo

Tio ĉi estis laboranta nuran monpunon en du malsama SharePoint enretaj medioj. Tamen, Kiam mia kolego ported ?i al Cloudshare okazo, Li estis akiranta HTTP 406 Eraro (Kiu estis la unua tempo mi iam ajn akiris ke unu, Tiel ?? Yay, Mi konjektas). Ni faris iom de esploro kaj rimarkita ke la “Akcepti” titolon estis ekstere. SharePoint enreta estis perfekte #feli?a kun:

Akcepti: Apliko/json

Sed la cloudshare okazo (Kiu estas SP sur prem, Gastigita en virtuala servilo) Dezirita la #klasika?o ??Datumo=verbose?? Aldonita en #anka?:

Akcepti: Apliko/json;Odata=verbose

Ripari tion, Ni aldonis la titolon kiel tia:

Var config = {Titoloj: {
??Ccept?: ??Pplication/json;Odata=verbose?
}
};

$Http.Akiras(ServerUrl,Config)
.Sukceso(Funkcio(Datumoj, Statuso, Titoloj, Config) {

Var getLinksResponse = datumo;

GetLinksResponse.Valoro.ForEach(Funkcio(TheResult) {

// Kaj tiel plu kaj do #?a?mo

Kiu akiris liverita de la 406, Sed ĝi ankaŭ ŝanĝis la formaton de la respondo. Ĝi estis pli … verbose. (Haha!) Pli da #?an?o estis postulita kaj #?i tie?? La fina rezulto:

Var config = {Titoloj: {
??Ccept?: ??Pplication/json;Odata=verbose?
}
};

$Http.Akiras(ServerUrl,Config)
.Sukceso(Funkcio(Datumoj, Statuso, Titoloj, Config) {

Var getLinksResponse = datumo;

GetLinksResponse.D.Rezultoj.ForEach(Funkcio(TheResult) {

// Kaj tiel plu kaj do #?a?mo

#Tio ?i nur turnita en 30 Eta problemo por ni, Do ni lucked ekstere. Espereble iu trovas #?i tiu utilan.

</Fino>

Kreskanta Konscion / Adopto de JavaScript Kadroj

Mia kolego, Javed Ansari (http://www.bigapplesharepoint.com/team?showExpertName=Javed%20Ansari&rsource=pgblog), Skribis mallongan resuman blogan #po?to sur kadroj li #?ati #a? #almena? estis uzanta kun kun SharePoint: http://www.bigapplesharepoint.com/pages/View-An-Insight.aspx?BlogID=53&rsource=PGBlog).

JQuery #?ajni esti la venkinto sur la kampo, Tiel paroli, Por jaroj nun, Sed la aliaj estas pli novaj kaj stills speco batali ?in, Kiel Angular. (SPServices, Nature, Estis viva #?paranto por jaroj kaj #da?ri esti do mi pensas).

Kio estas homoj uzanta? Estas ili koncentris pli da sur Microsoft?? Tooling (CSOM / JSOM) #A? movanta pli da al Angular, #Knoka?to, Ember, Ktp?

Mi havas kreskantan #anta?ju?o al #?i tiu ne-Microsoft kadroj. Mi pensas la MSFTan #a?o estas pli malfacila kaj pli malfacila labori kun, Postulanta #preska? tiom multe lerni kurbon kiel malnova-stila servilo-flanka dev.

#Po?ti rimarkon #?i tie #a? super #?e Granda Apple SharePoint Se vi deziras diskuti (Granda Pomo havos pli da probableco de bona diskuto).

</Fino>

Turnadanta SharePoint Minutatoraj Laborpostenoj de Eja Kolekto Konfiguracio

Mia kolego, Ashish Patel, Skribis blogan #po?to Priskribanta flekseblan minutatoran laborpostenan arkitekturon Kiu havigas iun belan flekseblecon subteni longan-fluaj taskoj kaj/#a? raportoj.  En liaj vortoj:

1. Analizanta Kontrolita dosierojn kaj sendanta rememorigilojn al la individuoj se la nombro de tagoj (Pro tio ke la dosiero estis kontrolita) Preterpasi certajn sojlajn limojn

2. Foriganta ligojn de alia enhavo kiam aparta enhavo estas forigita #a? enarkivigita de la sistemo

3. Uzanto deziras vidi #?iuj la atentigoj kiu li abonis en #?iuj #aranea?o en la eja kolekto

4. Sendanta rememorigilojn al #a?toro revizii la enhavon kiam revizia tempo estis specifita en la enhavo kaj tiu dato estas #alproksimi?i

Puto, La listo #da?rigi?

– Vidi pli da #?e: Http://Www.bigapplesharepoint.com/pages/view--Enrigardo.Aspx?BlogID=40#sthash.7cKuiwly.Dpuf

Estas tempoj en mia pasinta kiam havanta ion tiel estus estinta tre helpema.

</Fino>

Kiel al: Formi Unuan Teston kaj Testan Priraportadon kun QUnit.js kaj Kovro.Js Por Oficejo 365 SharePoint App

Intro

Mi estis esploranta unuan elprovadon kaj testan priraportadon por JavaScript kiel mi laboras sur nova SharePoint app por SharePoint enreta en la Oficejo 365 Aro.  La evidentaj esploraj vojoj gvidis min al Qunit.Js Kaj ĝusta post kiam tio, Al Kovro.Js.

QUnit lasis min instalita unuajn testojn kaj grupigi ilin en kapsuloj.  Kapsulo estas nur simpla vojo organizi rilatita testojn. (Mi ne estas certe mi estas uzanta ĝin kiel celita, Sed ĝi estas laboranta por mi tiel ege kun la malgranda aro de testoj mi tiel ege difinis).

Kovro.Js integrigas kun Qunit kaj ĝi montros min la realaj linioj de JavaScript kiu estis – kaj pli grave – ne estis efektive efektivigita en la kurso kuri la testojn.  Tio ĉi estas “priraportadaj” – linioj kiu efektivigis estas kovrita de la testo dum aliaj ne estas.

Inter instalanta bonajn testajn kazojn kaj vidanta priraportadon, Ni povas redukti la riskon ke nia kodo kaŝis mankojn.  Bonaj tempoj.

Qunit

Supozanta vin havas vian Vidan Studian projekton instalita, Komenco de elŝutanta la JavaScript pako de http://qunitjs.com.  Aldoni la JavaScript kaj responda CSS al via solvo.  Mia similas tion ĉi:

image

Cifero 1

Kiel vi povas vidi, Mi estis uzanta 1.13.0 Ĉe la tempo mi skribis ĉi tiun blogan poŝton. Ne forgesas elŝuti kaj aldoni la CSSan dosieron.

KE ekstere de la vojo, Sekvanta paŝo estas krei iun specon de testo jungas kaj referenci la Qunit pecoj.  Mi estas elprovanta aron de funkcioj en skriba dosiero vokis “QuizUtil.Js” do mi kreis HTMLan paĝon vokis “QuizUtil_testo.Html” kiel montrita:

image Cifero 2

Ĉi tie-a la kodo:

<!DOCTYPE Html>
<Html Xmlns="Http://Www.w3.org/1999/xhtml">
<Kapo>
    <Titolo>QuizUtil testo kun Qunit</Titolo>
    <Ligo Rel="Stylesheet" Href="../CSS/qunit-1.13.0.Css" />
    <Skribo Tipo="Teksto/javascript" Src="QuizUtil.Js" Datumo-kovrilo></Skribo>
    <Skriba tipo="Teksto/javascript" Src="Qunit-1.13.0.Js"></Skribo>
    <Skriba tipo="Teksto/javascript" Src="Kovro.Min.Js"></Skribo>

    <Skribo>
        Kapsulo("GetIDFromLookup");
        Testo("QuizUtil getIDFromLookupField", Funkcio () {
            Var GoodValue = "1;#Paul Galvin";

            Egala(GetIDFromLookupField(GoodValue) + 1, 2), "IDENTIGAĴO de [" + GoodValue + "] + 1 Devus esti 2";
            Egala(GetIDFromLookupField(Undefined), Undefined, "Undefined eniga argumento devus reveni undefined rezulto.");
            Egala(GetIDFromLookupField(""), Undefined, "Senhoma eniga argumento devus reveni  undefined valoro.");
            Egala(GetIDFromLookupField("Gobbledigood3-thq;Dkvn ada;Skfja sdjfbvubvqrubqer0873407t534piutheqw;Vn"), Undefined,"Ĉiam devus reveni rezultan kabrioleton al Integralo");
            Egala(GetIDFromLookupField("2;#Kelkaj alia persono"), "2", "Kontrolanta [2;#Kelkaj alia persono].");
            Egala(GetIDFromLookupField("9834524;#Longa valoro"), "9834524", "Granda valora testo.");
            NotEqual(GetIDFromLookupField("5;#Iu ajn", 6), 6, "Elprovanta  notEqual (5 Ne estas egala al 6 Por ĉi tiu ekzemplo: [5;#Iu ajn]");

        });

        Kapsulo("HtmlEscape");
        Testo("QuizUtil htmlEscape()", Funkcio () {
            Egala(HtmlEscape("<"), "&Lt;", "Evitanta  malpli ol operacianto ('<')");
            Egala(HtmlEscape("<Div klaso="someclass">Iu teksto</Div>"), "&Lt;Div klaso=&Quot;Someclass&Quot;&Gt;Iu teksto&Lt;/Div&Gt;", "Pli kompleksa testa ŝnuro.");
        });

        Kapsulo("GetDateAsCaml");
        Testo("QuizUtil getDateAsCaml()", Funkcio () {
            Egala(GetDateAsCaml(Nova Dato("12/31/2013")), "2013-12-31T:00:00:00", "Elprovanta malfacile kodita daton: [12/31/2013]");
            Egala(GetDateAsCaml(Nova Dato("01/05/2014")), "2014-01-05T:00:00:00", "Elprovanta malfacile kodita daton: [01/05/2014]");
            Egala(GetDateAsCaml(Nova Dato("01/31/2014")), "2014-01-31T:00:00:00", "Elprovanta malfacile kodita daton: [01/31/2014]");
            Egala(GetTodayAsCaml(), GetDateAsCaml(Nova Dato()), "GetTodayAsCaml() Devus egalan getDateAsCaml(Nova Dato())");
            Egala(GetDateAsCaml("Absurda valoro"), Undefined, "Provi akiri la daton de absurda valoro.");
            Egala(GetDateAsCaml(Undefined), Undefined, "Provi akiri la daton de la [Undefined] Dato.");
        });

        Kapsulo("GetParameterByName");
        Testo("QuizUtil getParameterByName (De la demanda ŝnuro)", Funkcio () {
            Egala(GetParameterByName(Undefined), Undefined, "Provi akiri undefined parametro devus reveni undefined.");
            Egala(GetParameterByName("Ne ekzistas"), Undefined, "Provi akiri parametran valoron kiam ni scias la parametron ne ekzistas.");

        });

        Kapsulo("Kuketoj");
        Testo("QuizUtil diversaj kuketaj funkcioj.", Funkcio () {
            Egala(SetCookie("Testo", "1", -1), GetCookieValue("Testo"), "Akiri kuketon mi fiksas devus labori.");
            Egala(SetCookie("Anycookie", "1", -1), Vera, "Fiksanta validan kuiradon devus reveni 'veran'.");
            Egala(SetCookie("Freneza kuketa nomo !@#$%"%\^&*(()?/><.,", "1", -1), Vera, "Fiksanta malbonan kuketan nomon devus reveni 'falsan'.");
            Egala(SetCookie(Undefined, "1", -1), Undefined, "Pasanta undefined kiel la kuketa nomo.");
            Egala(GetCookieValue("Ne ekzistas"), "", "Kuketo ne ekzistas teston.");
        });

    </Skribo>
</Kapo>
<Korpo>
    <Div Identigaĵo="Qunit"></Div>
    <Div Identigaĵo="Qunit-fiksaĵo"></Div>

</Korpo>
</Html>

Estas pluraj aferoj okazanta ĉi tie:

  1. Referencanta mian kodon (QuizUtil.Js)
  2. Referencanta Qunity.Js
  3. Difinanta kelkajn kapsulojn (GetIDFromLookup, Kuketoj, Kaj aliaj)
  4. Lokanta <Div> Kies IDENTIGAĴO estas “qunit”.

Tiam, Mi nur tiras supre ĉi tiu paĝo kaj vi akiras ion tiel:

image

Cifero 3

Se vi rigardas trans la supro, Vi havas kelkajn elektojn, Du el kiu estas interesanta:

  • Kaŝi pasita testojn: Sufiĉe evidenta.  Povas helpi vian okulon nur vidi la problemajn areojn kaj ne multa malordo.
  • Kapsulo: (Fali malsupren): Tio ĉi filtros la testojn malsupren al nur tiuj grupoj de testoj vi deziras.

Koncerne la testoj si mem – kelkaj rimarkoj:

  • Ĝi iras sen diranta ke vi devas skribi vian kodon tia ke ĝi estas testable en la unua loko.  Uzanta la ilon povas helpi observigi tiun disciplinon. Ekzemple, Mi havis funkcion vokis “getTodayAsCaml()”.  Tio ĉi ne estas tre testable pro tio ke ĝi prenas neniun enigan argumenton kaj elprovi ĝin por egaleco, Ni devus konstante ĝisdatigi la testan kodon reflekti la nunan daton.  Mi refactored ĝi de aldonanta datuman enigan parametron tiam pasanta la nunan daton kiam mi deziras hodiaŭan daton en CAMLa formato.
  • La Qunit kadro dokumentas ĝiajn proprajn testojn kaj ĝi ŝajnas sufiĉe fortika.  Ĝi povas fari simplajn aferojn kiel elprovanta por egaleco kaj ankaŭ havas subtenon por ajax stilaj vokoj (Ambaŭ “vera” aŭ mokis uzanta vian preferatan pli imita).
  • Iranta tra la procezo ankaŭ devigas vin pensi tra randaj kazoj – kio okazas kun “undefined” aŭ null estas pasita en funkcio.  Ĝi faras ĝin senvive simpla elprovi ĉi tiujn scenarojn ekstere.  Bona aĵo.

Priraportado kun Kovro.Js

Kovro.Js kompletigas Qunit de spuranta la realajn liniojn de kodo kiu efektivigas dum la kurso kuri viajn testojn.  Ĝi integrigas ĝuste en Qunit do eĉ kvankam ĝi estas tuta aparta app, Ĝi ludas agrable – ĝin vere similas ĝin estas unu seamless app.

Tio ĉi estas kovro.Js en ago:

image Cifero 4

image

Cifero 5

(Vi efektive devas klaki sur la “Ebligi priraportadon” checkbox ĉe la supro [Vidi Ciferon 3] Ebligi tion ĉi.)

La reliefigita liniojn en Cifero 5 Ne estis efektivigita de iu ajn de miaj testoj, Do mi devas elpensi teston kiu faras kaŭzi ilin efektivigi se mi deziras plenan priraportadon.

Akiri kovron.Js laboranta de sekvanta ĉi tiujn paŝojn:

  1. Elŝuti ĝin de http://blanketjs.org/.
  2. Aldoni ĝin al via projekto
  3. Ĝisdatigi vian teston jungas paĝon (QuizUtil_testo.Html en mia kazo) Kiel sekvas:
    1. Referenci la kodon
    2. Ornami via <Skribo> Referenci tiel:
    <Skribo Tipo="Teksto/javascript" Src="QuizUtil.Js" Datumo-kovrilo></Skribo>

Kovro.Js kaptas la “datumon-kovrila” eco kaj faras ĝian magion.  Ĝi hokas en Qunit, Ĝisdatigas la UI aldoni la “Ebligi priraportadan” elekton kaj voila!

Resuma (TL; D-ro)

Uzi Qunit skribi viajn testajn kazojn.

  • Elŝuti ĝin
  • Aldoni ĝin al via projekto
  • Skribi teston jungas paĝon
  • Krei viajn testojn
    • Refactor kelkaj de via kodo esti testable
    • Esti kreiva!  Pensi de freneza, Neeblaj scenaroj kaj elprovi ilin ĉiuokaze.

Uza kovro.Js certigi priraportadon

  • Fari certan Qunit estas laboranta
  • Deŝuta kovro.Js kaj aldoni ĝin al via projekto
  • Aldoni ĝin al via testo jungas paĝon:
    • Aldoni referencon al kovro.Js
    • Aldoni “datumon-kovrila” eco al via <Skribo> Etikedo
  • Kuri via Qunit testoj.

Mi neniam faris iun ajn de tio ĉi antaŭ ol kaj havis iun rudimentan aĵon laboranta en iometo de horoj. 

Feliĉa elprovado!

</Fino>

undefinedAboni al mia blogo.

Sekvi min sur Pepi ĉe http://www.twitter.com/pagalvin

Listoj.Asmx, GetList kaj “Valoro ne povas esti null”

Mi eltrovis hodiaŭ ke la GetList() Metodo en Listoj.Asmx Araneaĵa servo devas esti vokita tre zorgeme aŭ ĝi estas kuŝa ĵeti misteran “Valoron ne povas esti null” escepto (Kaj tio estas supozanta vin povas akiri pasintan la para pli malbona kolektiva eraro mesaĝo, “Escepto de tipo ‘Microsoft.SharePoint.SoapServer.SoapServerException’ Estis ĵetita.”)  Specife, Mi trovis ke vi ne povas provizi ajnan specon de prefikso sur la GetList metodo.  La sekvanta jQuery ereto ilustras la punkton:

image

Se vi fari tion, La araneaĵa servo respondas kun “Valoro ne povas esti null” kiel por tio ĉi Fiddler-Provizita HTTPan transskribaĵon:

<?Xml versio="1.0" Kodanta="utf-8"?>
  <Sapo:Koverto
     Xmlns:Sapo="
Http://Schemas.Xmlsoap.Org/sapa/koverto/"    
     Xmlns:Xsi=”
Http://Www.w3.org/2001/xmlschema-okazo
     Xmlns:Xsd="
Http://Www.w3.org/2001/xmlschema">

  <Sapo:Korpo>
    <Sapo:Misfaro>
      <Faultcode>Sapo:Servilo</Faultcode>
      <Faultstring>
        Escepto de tipo ‘Microsoft.SharePoint.SoapServer.SoapServerException’ Estis ĵetita.
      </Faultstring>
      <Detalo>
        <Errorstring xmlns="
Http://Schemas.Microsoft.Com/sharepoint/sapo/">
Valoro ne povas esti null.
        </Errorstring>
      </Detalo>
    </Sapo:Misfaro>
  </Sapo:Korpo>
</Sapo:Koverto>

Nature, Vi verŝajne ne aldonus tiu “s0” prefikso sur via propra, Sed kelkaj iloj estas kuŝaj fari ĝin (Kiel Eklipso).

Tio ĉi estas multe pli konfuzanta / Ĉagreniĝanta ĉar aliaj metodoj toleras prefiksojn.  Ekzemple, La GetListCollection Metodo ne atentas se ĝi estas estita prefixed, Eĉ kun absurdaj prefiksoj kiel “xyzzy”:

image

Ĉi tiu “valoro ne povas esti null” ŝajnas juste ofta kun listoj.Asmx sekve espereble tio ĉi helpos iun ekstere en estonteco.

</Fino>

Aboni al mia blogo.

Sekvi min sur Pepi ĉe http://www.twitter.com/pagalvin

Endlessly Nestado <Div> Etikedoj kaj jQuery

Tio ĉi ŝajnas kiel tia bizarula temo, Mi ne estas certe ĝi estas vere valora blogging pri, Sed tio estas neniam haltita min antaŭe, Tiel ĉi tie ni iras rideto

Mi estas eliranta sur projekto kie mi estas tiranta kelkajn datumojn de serĉo, Prezentanta ĝin supre en XMLa mesaĝo kaj tiam ke XML estas fine transformita en HTML tra XSLT.  Tie estas multa jQuery okupita, Unu mordis de kiu efektivigas kelkaj tabbing funkcio.  Kiam vi klakas sur klapeto (Vere, al <Div>), JQuery alvokas .Felo() Kaj .Rezulto() Sur diversaj divs (La komenca paĝa ŝarĝo elŝutas ĉiuj la enhavo sekve estas ne postbacks en ĉi tiu kazo).

Aro de horoj antaŭe, La klapeto ŝaltanta logikon komencita konduti nekonstante kaj ĝi ne montrus unu el miaj klapetoj.  Mi fine spuris ĝin malsupren al la fakto ke interreta esploristo (Almenaŭ) Pensis ke la <Div> Etikedoj nestis ege, Ege pli profunda ol celita.La ellaboranto toolbar montrus:

-<Div identigaĵo=”Tab1Content”>
  -<Div>
    -<Div>
      -<Div identigaĵo=”Tab2Content”>
        -<Div>
           …………………………
                   </Div>  <—Fine montranta ĝin estis fermita tute malsupren ĉi tie!

Tiel, Se mi faris $(“#Tab1Content”).Felo(), Mi ankaŭ kaŝus Tab2 kaj min neniam povus montri Tab2 se mi ne ankaŭ montris Tab1.  Mi kopiis kaj almetis la kodon supre en vida studio kaj ĝi montris ĉiujn de la div-a viciganta agrable, Nur ŝatas ilin estis supozita esti faranta, Similanta tion ĉi:

-<Div identigaĵo=”Tab1Content”>
  +<Div>
  +<Div>
-<Div identigaĵo=”Tab2Content”>
  +<Div>
  +<Div>

Mi venkas mian kapon kontraŭ la muro por momento kaj rimarkita ke en la reala HTMLa kodo estis produktanta multan senhoman <Div> Etikedoj, Ŝatas:

<Korpo>

  <Div identigaĵo=”Tab1Content”>

    <Div identigaĵo=”row1” />
    <Div identigaĵo=”row2” />

  </Div>

  <Div identigaĵo=”Tab2Content”>

    <Div identigaĵo=”row1” />
    <Div identigaĵo=”row2” />

  </Div>

</Korpo>

(La sur estas waaaaaaaaaaaay oversimplified.  La senhoma div etikedoj estas tute validaj. Kelkaj de mia <Div> Etikedoj estis plene de enhavo, Sed multa plio ne estis.  Mi venis al la konscio ke mia <Xsl:Pro tio ke-ĉiu> Instrukcioj estis emanigantaj la mallongan-formo div etikedas kiam la xsl:Pro tio ke-ĉiu faris ne' trovas ajnan datumon.  Mi devigis HTMLan rimarkon en la produktado, Kiel montrita:

image

 

Post kiam mi faris tion, Ĉiuj la div-a vicigis agrable kaj mia klapeto ŝaltanta komencita laboranta.

Kiel ĉiam, Mi esperas tion ĉi helpas iun en pinĉo.

</Fino>

Aboni al mia blogo.

Sekvi min sur Pepi ĉe http://www.twitter.com/pagalvin

Unu Afero por “La kreinto de ĉi tiu misfaro ne specifis Kialon.”

Mi estis faranta multan laboron kun SharePoint serĉo lastatempe kaj specife la KeywordQuery klaso, nemoveblaĵoj kaj metodoj.

Se vi deziras la rezulton fiksita reveni rezultojn sur kaj pretere la kutimaj suspektatoj (Vidi ĉi tie), Vi aldonas ĝin al la SelectedProperties kolekto, Kiel je:

MyKeywordQuery.SelectProperties.Aldonas("Xyzzy");

Multaj dankonas kaj konsileto de la ĉapelo al Corey Roth Kaj Tio ĉi grandege helpema bloga poŝto (http://www.dotnetmafia.com/blogs/dotnettipoftheday/archive/2008/02/19/how-to-use-the-moss-enterprise-search-keywordquery-class.aspx)

En mia kazo, “Xyzzy” ne estas efektive administrita nemoveblaĵon.  Kiam mi aldonis ĝin al SelectedProperties ĉiuokaze, SharePoint ĵetis unu el mia ŝatolisto iam ajn runtime esceptoj:

“La kreinto de ĉi tiu misfaro ne specifis Kialon.”

Mi precipe kiel la majuskla “R” en Kialo.  Tio ĉi sonas al mi kiel la .PURA ekvivalento de “Mi havas neniun buŝon, Kaj mi devas ŝirkrii.”

</Fino>

Aboni al mia blogo.

Sekvi min sur Pepi ĉe http://www.twitter.com/pagalvin

Oportuna Referenco: Defaŭltaj Rezultoj de KeywordQuery Serĉo

Kiam vi alvokas la Efektivigi() Metodo sur KeywordQuery, Vi povas krei ResultTable bazita sur ResultType.RelevantResults.  Ĉi tiu koda ereto ilustras kion mi signifas:

ResultTableCollection resultsTableCollection = myKeywordQuery.Efektivigas();

ResultTable searchResultsTable = resultsTableCollection[ResultType.RelevantResults];

La rezultinta tablo havos la sekvantajn kolumnojn de informo: 

WorkId
Senhonta
Titolo
Aŭtoro
Grandeco
Vojo
Priskribo
Skribi
SiteName
CollapsingStatus
HitHighlightedSummary
HitHighlightedProperties
ContentClass
IsDocument
PictureThumbnailURL
ServerRedirectedURL

Mi derivis ĉi tiun liston de SharePoint 2010 Medio, Entreprena eldono.  Espereble ĝi estos oportuna al iu en estonteco.

</Fino>

Aboni al mia blogo.

Sekvi min sur Pepi ĉe http://www.twitter.com/pagalvin

Unu Kialo por: “Malsukcesita eltiri la taksian dosieron en la solvo”

Dum laboranta sur vida studia araneaĵa parto projekto hodiaŭ, Mi faris negravan re-org de kelkaj dosieroj esti metita en la _plana teko kiel parto de la deploja procezo. Specife, Mi renomis .Js dosiero de “TypeAhead.Js” al “TypeAhead(Malnova).Js”  Mi planas forigi ĝin tuj kiam ĝia posteulo “TypeAhead.Js” pruvas ĝustan.  Ĝi similis tion ĉi:

image

Tio ĉi tuj kaŭzis problemon kun vida studio kiam mi provis deplojiĝi la projekton:

Eraro okazita en deploja paŝo ‘Aldonas Solvon': Malsukcesita eltiri la taksian dosieron en la solvo.

Ĝi rezultas ke vi ne devus meti parenthesis en dosieraj nomoj.  Mi forigis la parens kaj ke solvis la problemon.

</Fino>

Aboni al mia blogo.

Sekvi min sur Pepi ĉe http://www.twitter.com/pagalvin