Archifau Categori: SharePoint Datblygu

Esboniad syml: “Nid yw gwerth yn dod o fewn yr ystod disgwyliedig.”

Y NEWYDDION DIWEDDARAF: Poster dienw a gadael sylw mawr am enwau mewnol. Sicrhewch eich bod yn ei ddarllen.

Wrth weithio gyda derbynwyr digwyddiad a chod arall bod cyfeiriadau SharePoint eitemau rhestr drwy'r model gwrthrych, Yr wyf yn aml yn gwneud camgymeriadau sy'n cynhyrchu gwall hwn ar runtime:

Gwall wrth lwytho a rhedeg digwyddiad Conchango.xyzzyEventReceiver derbynnydd yn xyzzy, Fersiwn = 1.0.0.0, Diwylliant = niwtral, PublicKeyToken = 0dc50a750396c3ac. Mae gwybodaeth ychwanegol isod. : Nid yw'r gwerth yn dod o fewn yr ystod a ddisgwylir.

Rwy'n meddwl Mae hwn yn wall eithaf generig sydd o bosibl yn achosi nifer o wahanol ffyrdd. Fodd bynnag,, un esboniad syml yw yr wyf yn cyfeirio cae yn anghywir. Os yw enw'r maes "Dyddiad dyledus", Rhaid yn ei gyfeiriad fel hyn mewn digwyddiad derbynnydd:

properties.ListItem["Dyddiad dyledus"]

Pan yr misspell neu defnyddiwch yr achos anghywir wrth gyfeirio at y maes, Mae SharePoint yn cynhyrchu uchod crybwyll gwall amser rhedeg gyda'r. Er enghraifft,, Mae hyn yn anghywir:

properties.ListItem["dyddiad dyledus"]

</diwedd>

Tanysgrifio i fy mlog.

Tagiau Technorati:

Cyflym & Hawdd: Creu Ffolder a Neilltuo Type Cynnwys (Neu, Dweud eich dangosyddion perfformiad allweddol a Bwyta Nhw Rhy)

Er mwyn gweithio o amgylch problem DPA Yr wyf yn ysgrifennu am yma, Oedd rhai profion ac yn darganfod y DPA gwaith erbyn ffolderi â meta data yn yr un modd y maent yn gweithio yn erbyn dogfennau neu rhestr eitemau. Profodd yr mae'n allan drwy greu math newydd o gynnwys yn seiliedig ar y math o gynnwys ffolder ac yna ychwanegu ychydig gaeau. Creu rhai dangosyddion ac yn profi i mi fy hun y dangosyddion perfformiad allweddol yn gweithio yn ôl y disgwyl. Roedd hyn yn newyddion i'w groesawu. Nid yw'n berffaith, oherwydd y Dril i lawr a gewch gan y DPA erbyn y ffolderi yn union beth hoffech chi. Dyw hyn ddim yn ormod o anfantais yn fy achos oherwydd 1) nid yw'r defnyddwyr terfynol yn gwybod unrhyw well a 2) Aiff y Dril i lawr i ffolder. Mae eu cliciwch enw'r ffolder ac maent yn eitem. Mae'n ddau chlic yn hytrach nag un, nad yw'n ddiwedd y byd.

Roedd hyn yn llifo ddel â gwaith a oedd yn gwneud. Yr wyf yn creu ffolder ar gyfer pob dogfen sy'n cael ei llwytho i fyny. Gwneir hyn trwy derbynnydd digwyddiad. O ganlyniad,, mae'n ddarn o gacen i gadw'r ffolder rhiant meta data yn gyson â data meta gyrru DPA o'r ffeil ei hun ers y gwaith plymio sydd ar waith eisoes. This allows me to have my KPI’s and eat them too 🙂

Addaswyd yr derbynnydd y digwyddiad i ychwanegu at y ffolder ac yna gosod math o gynnwys y ffolder newydd i fy math personol o gynnwys dangosydd perfformiad allweddol-gyfeillgar. Gwnaeth hwn ychydig o Cod y gamp:

 SPFolderCollection srcFolders = targetWeb.GetFolder("Dogfennau").Is-blygyll;
  SPFolder ffolder llwytho = srcFolders.Add(properties.ListItem.ID.ToString());
  SPContentTypeId kpiCT = newydd SPContentTypeId("0x0120002A666CAA9176DC4AA8CBAA9DC6B4039F");
  addedFolder.Item["Math ID cynnwys"] = kpiCT;
  addedFolder.Item.Update();

I ddod o hyd i'r Type Cynnwys gwirioneddol ID, I weld y math o gynnwys drwy leoliadau y safle a chopi / gludo yn y URL fel y dangosir:

Delwedd

</diwedd>

Tanysgrifio i fy mlog!

Tagiau Technorati: ,

Cyflym a hawdd: Cael y SPFolder o SPListItem mewn Derbynnydd Digwyddiad

Mae'n gas gen i gyfaddef hynny, ond yr wyf yn cael trafferth gyda hwn un bob dydd. Mae angen diweddaru maes ei ffolder rhiant fy derbynnydd digwyddiad. Mae hyn ychydig yn dangos sut i wneud hynny:

preifat gwag UpdateParentFolder(SPItemEventProperties eiddo)
{

SPFolder thisItemFolder = properties.ListItem.File.ParentFolder;
thisItemFolder.Item["Statws cymeradwyo ZZ"] = "Newyddion da, pawb!";
thisItemFolder.Item.Update();


} // UpdateParentFolder

Yn yr achos hwn, Rwy'n gweithio gyda llyfrgell ddogfen a'r eiddo yn dod o ddigwyddiad ItemAdded.

Y gamp yw na allwch chi gael y SPFolder yr eitem yn uniongyrchol o'r eitem ei hun (h.y. properties.ListItem.Folder yn null). Yn lle hynny, ewch i File cysylltiedig yr eitem rhestr a chael ffolder y ffeil yn.

</diwedd>

Tanysgrifio i fy mlog!

Tagiau Technorati:

Eto arall Digwyddiad Derbynnydd Castia Debug

Yr wyf yn siwr nad wyf yn y person cyntaf i lunio hwn. Fodd bynnag,, Dydw i ddim wedi sylwi ar unrhyw un yn cyhoeddi tric fel hyn ers i mi ddechrau yn talu sylw agos i'r gymuned fis Gorffennaf diwethaf. Felly, Rwy'n meddwl y byddwn i'n bostio hwn tip debug gyflym ac yn hawdd.

Dw i'n gweithio ar derbynnydd digwyddiad a ddechreuodd i gynhyrchu gwall hwn yn y 12 cwch:

Gwall wrth lwytho a rhedeg digwyddiad Conchango.xyzzyEventReceiver derbynnydd yn xyzzy, Fersiwn = 1.0.0.0, Diwylliant = niwtral, PublicKeyToken = blahbalhbalh. Mae gwybodaeth ychwanegol isod. : Cyfeirnod gwrthrych heb ei osod i achos o gwrthrych.

Doeddwn i ddim yn gwybod lle yr wyf wedi cyflwyno byg hwn oherwydd roedd yn gwneud gormod o bethau yn un o fy cylchoedd cod/defnyddio/prawf.

Yr wyf yn ceisio yr ateb hwn i gael fy pdb yn yno gyda gobeithio y SharePoint yn 12 Byddai cwch yn dangos yr olin pentwr, but no luck. Ddim yn gwybod os oes modd ac os bydd rhywun yn gwneud, os gwelwch yn dda gadewch i mi wybod 🙂

Yr wyf yn gwybod ei bod yn bosibl i ysgrifennu eich negeseuon log hun i'r 12 cwch. A dweud y gwir, Roeddwn i eisiau rhywbeth ychydig yn llai brawychus ac yn gyflymach i'w gweithredu.

Mae'n digwydd i mi y gallwn o leiaf gael rhywfaint o wybodaeth sylfaenol olrhain drwy ddal ac ail-taflu eithriadau cyffredinol fel hyn:

  ceisio {
    UpdateEditionDate(eiddo);
  }
  dal (Eithriad a)
  {
    taflu newydd Eithriad("Dispatcher, UpdateEditionDate(): Eithriad: [" + e.ToString() + "].");
  }

Roedd hyn yn dangos i fyny yn y 12 cwch thusly:

Gwall wrth lwytho a rhedeg digwyddiad Conchango.xyzzyEventReceiver derbynnydd yn xyzzy, Fersiwn = 1.0.0.0, Diwylliant = niwtral, PublicKeyToken = blahblahblah. Mae gwybodaeth ychwanegol isod. : Dosbarthydd, UpdateEditionDate(): Eithriad: [System.NullReferenceException: Cyfeirnod gwrthrych heb ei osod i achos o gwrthrych. ym Conchango.xyzzyManagementEventReceiver.UpdateEditionDate(Eiddo SPItemEventProperties) ym Conchango.xyzzyManagementEventReceiver.Dispatcher(Eiddo SPItemEventProperties, EventDescription llinyn)].

A roddodd i mi yr holl fanylion angen i mi ddod o hyd i broblem benodol honno ac yr wyf yn disgwyl ei ddefnyddio llawer yn mynd ymlaen.

</diwedd>

Tanysgrifio i fy mlog!

Ateb: SPQuery Nid yw Chwilio Folders

Yr oedd yn ei gweithredu'r wythnos ddiwethaf hon "yn esblygu" ateb ar gyfer cleient sy'n defnyddio BDC a SPQuery, ac yn rhedeg i rai anhawster defnyddio SPQuery erbyn Llyfrgell ddogfen sy'n cynnwys ffolderi. Llinell waelod: neilltuo "ailadroddus" i'r casgliad priodoledd yr ymholiad.

Fy senario:

  • Ar ddydd Llun, I'n llwytho dogfen a chyflenwi rhywfaint o ddata meta.
  • Yr wythnos ganlynol, Yr wyf yn lanlwytho dogfen newydd. Mae llawer o'r data meta ddogfen newydd hon yn seiliedig ar y ddogfen a llwytho i fyny yr ddydd Llun (yr ydym yn galw "meistr ddogfen").
  • Rydym wedi creu ffasâd gwasanaeth ar y we sy'n darparu rhyngwyneb BDC-gyfeillgar at y rhestr fel y gall defnyddwyr ddod o hyd y ddogfen honno Dydd Llun yn hawdd drwy chwilio teitl.
  • Mae Colofn data BDC yn darparu rhyngwyneb defnyddiwr cyfeillgar. (Mae hyn yn rhan o fy ymgais i ddefnyddio BDC ar gyfer colofn-edrych yn fwy cyfeillgar).

Mae'r gwasanaeth ffasâd BDC terfynol yn defnyddio ymholiad fel hyn i wneud y-edrych:

 // Offeryn U2U defnyddio i helpu i gynhyrchu hwn ymholiad CAML.
      oQuery.Query =
        "<Lle>";

      os (titleFilter.Length > 0)
        oQuery.Query   =
          "  <Ac>";

      oQuery.Query   =
        "    <Ac>" +
        "      <Geq>" +
        "        <Enw FieldRef =. "DocumentId" />" +
        "        <Gwerth math =. "Text">" + MinID + "</Gwerth>" +
        "      </Geq>" +
        "      <Leq>" +
        "        <Enw FieldRef =. "DocumentId" />" +
        "        <Gwerth math =. "Text">" + maxId + "</Gwerth>" +
        "      </Leq>" +
        "    </Ac>";

      os (titleFilter.Length > 0)
        oQuery.Query   =
          "    <Yn cynnwys>" +
          "      <Enw FieldRef =. "Title" />" +
          "      <Gwerth math =. "Text">" + titleFilter + "</Gwerth>" +
          "    </Yn cynnwys>" +
          "  </Ac>";
      oQuery.Query   =
        "</Lle>";

Yn ystod y cam cychwynnol o ddatblygu, Roedd hyn yn gweithio'n iawn. Fodd bynnag,, cyflwynwyd ffolderi i mewn i'r cyfeiriadur i ddatrys rhai problemau ac yn sydyn, Ni fyddai fy picker BDC yn dychwelyd unrhyw ganlyniadau. Olrhain yr hyn i lawr at y ffaith na fyddai y SPQuery byth yn dychwelyd unrhyw ganlyniadau. Rydym yn defnyddio ffolderi bennaf er mwyn caniatáu sawl ffeil gyda'r un enw i llwytho i fyny ond gyda gwahanol meta data. Pan fydd y ffeil ei llwytho i fyny, rydym yn creu ffolder yn seiliedig ar adnabod yr eitem rhestr ac yna symud y ffeil yno (Ysgrifennais am hynny yma; rydym wedi cael canlyniadau cymysg â'r dull hwn, ond ar y cyfan, mae'n gweithio'n dda). Y defnyddiwr ddim gofal am ffolderi ac yn wir, Dydw i ddim wir yn deall nad oes unrhyw ffolderi. Rydym wedi ffurfweddu holl safbwyntiau ar y Llyfrgell i ddangos eitemau heb ffolderi.

Cyrraedd y broblem hon ddwywaith fel gweithredu technegol wedi esblygu a datrys ei wahanol bob tro. Y tro cyntaf, Doeddwn i ddim yn defnyddio gweithredwr y cynnwys yn yr ymholiad. Heb un gweithredwr yn cynnwys, Llwyddodd i ddatrys y broblem trwy nodi barn ar contructor y SPQuery. Yn hytrach na defnyddio adeiladwr diofyn:

SPList oList = web.Lists["Dogfennau"];

SPQuery oQuery = newydd SPQuery();

Yr wyf yn hytrach na defnyddio Constructor hyn a bennir golwg:

SPList oList = web.Lists["Dogfennau"];

SPQuery oQuery = newydd SPQuery(oList.Views["Holl ddogfennau"]);

Mae hynny'n datrys y broblem a dechreuais i gael fy nghanlyniadau.

Ychwanegais y gweithredwr cynnwys wedyn yn y cymysgedd a dorrodd eto. Mae'n troi allan fod y gweithredwr yn cynnwys, cyn belled ag y gallaf ddweud, ddim yn gweithio â barn yr un ffordd ag y mae GEQ symlach / Gweithredwyr AALl. Oedd rhai chwilio ac yn dysgu y dylid pennu ViewAttributes yr ymholiad i "Ailadroddus", fel yn:

oQuery.ViewAttributes = "Gwmpas =."Recursive"";

Roedd hynny'n datrys y broblem ar gyfer cynnwys. Yn wir,, hyn hefyd yn datrys problem fy chwiliad gwreiddiol ac os wyf wedi nodi y priodoledd recursive y tro cyntaf, Fyddwn i ddim wedi rhedeg i mewn i'r mater eto.

Mae'r ffaith bod SPQuery sy'n seiliedig ar farn yn gweithio ar gyfer rhai gweithredwyr (GEQ/LEQ) ac nid eraill (CYNNWYS), ynghyd â'r ffaith nad yw DPAau yn ymddangos i weithio o gwbl gyda llyfrgelloedd dogfen ffolder sy'n cynnwys fy arwain i gredu bod SPQuery wedi rhai materion orthogonality.

Diolch arbennig:

  • Mae'r Folks da am U2U ac mae eu dull ymholiad.
  • Michael Hoffer yn wych "dysgu drwy wneud" swydd blog, sylwadau ac ymatebion.

</diwedd>

Tanysgrifio i fy mlog!

MOSS DPA bug? Dangosydd Rhestr Clwm i Llyfrgell Dogfennau Gyda Folders

Y NEWYDDION DIWEDDARAF 02/29/08: Yr wyf yn datrys y broblem drwy greu ffolder a wedyn bennu math o gynnwys y ffolder sydd â data meta yr angen ar gyfer y dangosyddion perfformiad allweddol. Disgrifiais hynny ychydig yn fwy o fanylion yma.

Yr ydym wedi gweithredu ateb technegol lle mae defnyddwyr yn lanlwytho dogfennau i Lyfrgell y ddogfen. Mae derbynnydd digwyddiad yn creu cyfeiriadur ac yn symud y ffeil at y cyfeiriadur hwnnw (defnyddio techneg debyg i'r hyn yr wyf yn ysgrifennu am yma). Rydym wedi ein tywys llwyddiannus o gwmpas problemau posibl a achosir gan derbynwyr digwyddiad y ailenwi'r ffeiliau wedi'u llwytho i fyny (bennaf oherwydd mae defnyddwyr byth yn dechrau eu dogfen trwy glicio ar "newydd" ond yn hytrach creu'r docs yn lleol ac yna llwytho i fyny).

Mae'r meta data ar gyfer y dogfennau hyn yn cynnwys ydw/oes Colofn safle o'r enw "brys" a Colofn safle arall o'r enw "Statws". Mae angen inni fodloni gofyniad busnes, sy'n dangos canran y "brys" dogfennau y mae eu statws yn "Aros".

Fel arfer, mae hyn yn syml i'w wneud ac yr wyf yn disgrifio rhywbeth yn debyg iawn hyn ar y Beagle SharePoint gyda llawer o ergydion sgrin os oes gennych ddiddordeb.

Yn gryno, Fe wnes i'r canlynol:

  • Greu darlun ar y Llyfrgell dogfen o'r enw "Aros".
  • Ffurfweddu y farn i anwybyddu strwythur folder.
  • Creu Rhestr DPA.
  • Creu dangosydd yn y rhestr sy'n pwyntio at y Democratiaid Rhyddfrydol dogfen a bod "arfaeth" gweld.

Dim ond nid yw hyn yn gweithio. Dengys y DPA fy targed (e.e.. pum dogfen brys) ond bob amser yn dangos y nifer wirioneddol o ddogfennau brys fel sero. Baradocsaidd, os ydych yn drilio i lawr i'r manylion, Mae'n dangos y pum dogfen brys yn y rhestr. Rwyf wedi creu senario syml iawn gyda dwy ddogfen, un mewn ffolder ac un nid. Dyma y sgrin lun:

Delwedd

Mae y sgrin lun uchod yn amlwg yn dangos dwy ddogfen farn ond "gwerth" yn un. "CamlSchema" gyda dogfen wag Id yn y ffolder gwraidd a eraill mewn ffolder o'r enw "84".

Mae'n ymddangos i mi, hyd yn oed er eich bod yn nodi barn, Nid yw'n KPI yn cadw'r y "dangos pob eitem heb ffolderi" gosod ac yn hytrach, cyfyngu ei hun i'r ffolder gwraidd.

Os ydw i'n anghywir, os gwelwch yn dda galw heibio i mi llinell neu adael sylw.

</diwedd>

Tanysgrifio i fy mlog!

Tagiau Technorati:

Ateb i broblem: “FileNotFoundException” Gyda Fy Derbynnydd Nodwedd.

Oedd yn gweithio ar nodwedd yr wythnos diwethaf y byddai ychwanegu rhai derbynwyr digwyddiad at achos rhestr penodol. (Rwy'n blogged ychydig am y rhestr honno derbynnydd yma).

Gan ddefnyddio 'r archa bannod, Gallwn osod y nodwedd heb unrhyw wall (ond gweler isod am y camgymeriad cudd). Pan wyf wedi ceisio defnyddio y nodwedd ar y safle, Cwynodd MOSS o'r "FileNotFoundException" gwall. Mae'r cofnod blog hwn yn disgrifio sut yr wyf yn ei datrys.

Mae hyn yn y gwall bod MOSS dangos i mi yn y porwr gwe:

Nodwedd ' b2cb42e3-4f0a-4380-aaba-1ef9cd526f20’ Doedd dim modd gosod oherwydd llwytho digwyddiad derbynnydd Cynulliad "xyzzyFeatureReceiver_0" wedi methu: System.IO.FileNotFoundException: Allai ddim llwytho'r ffeil neu'r Cynulliad ' xyzzyFeatureReceiver_0’ neu un o'i dibyniaethau. Ni all y system ddod o hyd i'r ffeil a bennir.
Enw ffeil: ' xyzzyFeatureReceiver_0’
ym System.Reflection.Assembly.nLoad(AssemblyName Enw'r ffeil, Codebase llinyn, AssemblySecurity Tystiolaeth, LocationHint Cynulliad, StackCrawlMark& pentwr pridd, Boole throwOnFileNotFound, ForIntrospection boolean)
ym System.Reflection.Assembly.InternalLoad(AssemblyName assemblyRef, AssemblySecurity Tystiolaeth, StackCrawlMark& pentwr pridd, ForIntrospection boolean)
ym System.Reflection.Assembly.InternalLoad(Llinynnol assemblyString, AssemblySecurity Tystiolaeth, StackCrawlMark& pentwr pridd, ForIntrospection boolean)
ym System.Reflection.Assembly.Load(Llinynnol assemblyString)
ym Microsoft.SharePoint.Administration.SPFeatureDefinition.get_ReceiverObject()
WRN: Logio rhwymo Cynulliad yn cael ei droi ODDI AR.
Er mwyn galluogi cynulliad rwymo cofnodi methiant, gosod y gwerth registry [HKLM Meddalwedd Microsoft Fusion!EnableLog] (DWORD) i 1.
Nodyn: Mae rhywfaint o gosb perfformiad sy'n gysylltiedig â gwasanaeth rhwymo cofnodi methiant.
I droi hyn nodwedd i ffwrdd, cael gwared ar y gwerth registry [HKLM Meddalwedd Microsoft Fusion!EnableLog].

Troubleshoot materion gyda Windows Gwasanaethau SharePoint.

Rwy'n gwybod sut i beri bod gwall yn fwriadol: peidio â gosod y Cynulliad yn y GAC. Ond, yr oedd yn y GAC. Fel arfer gosod wyf Cynulliadau yn y GAC drwy lusgo iddynt yn y c:\ffolder windowsassembly gan ddefnyddio windows explorer. Rwyf wedi teimlo erioed 100% gyfforddus yn gwneud hynny oherwydd yr wyf bob amser yn meddwl bod gacutil yn bodoli am reswm … fel yr wyf wedi ceisio gwneud hynny. Mae'n gwneud unrhyw wahaniaeth.

Edrychais ar y Internets a dod o hyd y swydd hon: http://forums.microsoft.com/MSDN/ShowPost.aspx?PostID=2243677&SiteID=1

Digwyddodd y poster i fod yn defnyddio'r un bit gwraidd o god (o'r llyfr WSS Inside o'r rhestr hon) Felly yr oedd yn arwydd gobeithiol. Fodd bynnag,, yr awgrym o addurno'r cynulliad gyda [cynulliad: ] Doeddwn i ddim Gyfarwyddeb yn gwneud synnwyr i mi. Ceisiais ei beth bynnag ac yr oedd yn iawn. Mae'n gwneud unrhyw wahaniaeth.

Yna sylwais nad oedd diffiniad fy dosbarth cyhoeddus. Gwneud yn gyhoeddus ac y mae hynny'n gwneud unrhyw wahaniaeth.

Nesaf, Euthum i'r drafferth o alluogi y "Cynulliad ymrwymiad methiant log" (ddilyn y cyfarwyddiadau defnyddiol a chywir a ddarperir) a dyma lle dechreuodd pethau fynd yn ddiddorol. Mae y cofnod yn dangos i mi y mae yr amser rhedeg yn chwilio ym mhobman ar y gweinydd ar gyfer fy Cynulliad. Ymddengys ei fod yn chwilio amdano yn fy cwpwrdd meddyginiaeth hyd yn oed. Ond … ni fydd yn chwilio ar ei gyfer yn y GAC.

I roi ar fy siaced gaeaf a fynd i chwilio y Internets eto a chael bod rhywun wedi cael y broblem hon hefyd. Trafodaeth faith yn postio hwnnw a dod oddi ar i'r dim ac ni allaf ddod o hyd i ateb.

Cynigiaf fy Cynulliad yn un o'r lleoedd honna log y mae ei chwilio ac yn gwneud ychydig mwy o gynnydd. Yr wyf yn gwobrwyo gyda'r gwall newydd yn y porwr wrth geisio ysgogi y nodwedd:

Wedi methu creu gwrthrych derbynnydd nodwedd o'r Cynulliad "xyzzyFeatureReceiver_0", math "Conchango.xyzzyFeatureReceiver" ar gyfer y nodwedd b2cb42e3-4f0a-4380-AABA-1ef9cd526f20: System.ArgumentNullException: Ni all Gwerth yn null.
Enw Paramedr: Math
ym System.Activator.CreateInstance(Math o Math, Boolean nonpublic)
ym System.Activator.CreateInstance(Math o Math)
ym Microsoft.SharePoint.Administration.SPFeatureDefinition.get_ReceiverObject()

Troubleshoot materion gyda Windows Gwasanaethau SharePoint.

Amser ar gyfer un daith olaf i'r Internets!

Y tro hwn i gael gwybod, ddigon disgwyl, y mae MOSS materion gwall hwn oherwydd nid yw'r Cynulliad yn GAC.

Rydw i eisiau rhywbeth cadarnhaol allan o hyn ac yn ceisio i deimlo ychydig yn falch fy mod i wedi creu Ffo o wasanaethau MSIL, ond nad yw'n gweithio. Yr wyf yn ddig unig eglur. Caf fy hun yn sibrwd "cyw iâr neu wy" o dan fy anadl.

Yn olaf, byddaf yn penderfynu punt. Rwy'n creu prosiect hollol newydd ac yn copïo/gludo i'r Cod o'r prosiect incredible-cloaked-from-the-GAC-assembly nad ydynt yn gweithio dros y prosiect newydd hwn. (Edrychaf ar gyfer galw rhywbeth fel "cuddio o'r Cynulliad rhwymol os wedi'u gosod yn y GAC baner adeiladu" ond ni all ddod o hyd i un).

I osod y nodwedd a activate 'ac … mae'n gweithio! Felly, ar ôl yr holl, Cefais i bôn ' ailgychwyn’ prosiect fy. Mae hyn yn rheswm arall pam yr wyf yn casáu cyfrifiaduron.

Oedd yn dysgu rhywbeth defnyddiol o hyn. Roedd wedi'i osod nodweddion gan ddefnyddio'r llinell gorchymyn stsadm gydol y dydd ac wedi bod yn defnyddio y "-rym" Opsiwn allan o arfer. Am ryw reswm, Nad oedd defnyddio opsiwn-rym pan rwy'n gosod y prosiect newydd. Y tro hwn, I ddim mewn gwirionedd yn, wirioneddol anghofio i gopïo Cynulliad hwn prosiect newydd i GAC y. O ganlyniad,, Derbyniais y "FielNotFoundException" gwall. Y tro hwn, Cefais ef stsadm, Nid pan geisiais i ysgogi y nodwedd drwy y porwr gwe. Felly, -Mae grym mewn gwirionedd yn chwarae rolau dwy. Mae'n caniatáu chi i ail-osod yn nodwedd presennol. Mae hefyd yn caniatáu chi i osod yn nodwedd bygis a ni all weithio ar amser rhedeg gan atal y gwall. Dywed hynny yn help rhywle mae'n debyg ond sylwais erioed ei.

</diwedd>

Tagiau Technorati: ,

Cyflym & Hawdd: Ail-enwi Ffeil Llwythwyd i fyny Gan ddefnyddio Model Gwrthrych SharePoint Drwy Derbynnydd Digwyddiad

Y NEWYDDION DIWEDDARAF: Mae hyn yn gweithio ond mae cyfyngiadau sylweddol a ddisgrifir yn y sylwadau. Gall hyn dal i fod yn ddefnyddiol mewn rhai cirumstances.

Y NEWYDDION DIWEDDARAF 2: Yn fy prosiect presennol, Mae defnyddwyr bob amser yn lanlwytho dogfennau. O ganlyniad,, Peidiwch â laddaf i broblem lle mae MS Word yn rhedeg ac yn credu bod ailenwyd y ffeil ar ei. Doedd wedi rhedeg i broblem, "Roedd y ffeil haddasu gan rywun arall" a datrys hyn drwy baner math cyfeiriad semaffor syml. Mae angen i ddefnyddwyr newid cae meta data o ei gwerth diofyn i rywbeth arall. Y itemupdated() derbynnydd yn edrych am werth dilys yno cyn mewn gwirionedd yn perfformio ail-enwi ac ers hynny, Nid wyf wedi cael unrhyw broblemau. Gall eich milltiroedd yn amrywio.

Mae gennyf gofyniad cleient i newid enw'r ffeil llwytho i fyny i Llyfrgell o ddogfennau penodol i gydymffurfio â Confensiwn Enwi penodol. Nid yw y API yn darparu "ailenwi()" dull. Yn lle hynny, rydym yn defnyddio "MoveTo(…)". Dyma ychydig bach iawn o Cod i gyflawni hyn:

 cyhoeddus gor-redeg gwag ItemAdded(SPItemEventProperties eiddo)
        {
            SPFile f = properties.ListItem.File;

            f.MoveTo(properties.ListItem.ParentList.RootFolder.Url + "/xyzzy.doc");
            f.Update();

        }

Y rhan anodd yn unig yw 'properties. ListItem.ParentList.RootFolder.Url". Y MoveTo() Mae'r dull yn gofyn URL. Roedd hynny wedi'i stwnsio pwyntiau llinyn mi i ffolder wraidd fy llyfrgell ddogfen bresennol. Mae hyn yn fy ngalluogi i osgoi unrhyw codau caled yn fy derbynnydd digwyddiad.

Mae hwn yn fersiwn mwy defnyddiol sy'n gwneud yr un peth, ond neilltuo enw'r ffeil "Teitl":

 cyhoeddus gor-redeg gwag ItemAdded(SPItemEventProperties eiddo)
        {
            DisableEventFiring();

            // Neilltuo teitl yr eitem hon i enw ffeil ei hun.
 // NODYN: Rhaid i'r aseiniad yn cael ei gynnal cyn i ni addasu'r ffeil ei hun.
 // Galw diweddariad() ar y SPFile ymddangos i annilysu eiddo yn
 // ychydig o synnwyr.  "Teitl y wybodaeth ddiweddaraf am" wedi methu hyd nes bod y newid (a diweddaru() ffoniwch)
 // eu symud o flaen y newid i'r enw ffeil.
            properties.ListItem["Teitl"] = Properties.ListItem.File.Name;

            properties.ListItem.Update();

            SPFile f = properties.ListItem.File;

            // Cael estyniad y ffeil.  Mae angen bod yn nes ymlaen.
 llinyn spfileExt = newydd Gwybodaeth Ffeil(f.Name).Estyniad;

            // Ail-enwi'r ffeil i adnabod yr eitem rhestr a defnyddio'r estyniad ffeil i gadw
 // y rhan honno ohono yn gyfan.
            f.MoveTo(properties.ListItem.ParentList.RootFolder.Url +
                "/" + properties.ListItem["ID"] + spfileExt);

            // Ymrwymo symud.
            f.Update();

            EnableEventFiring();
        }

'N chwim Blaen: Cynnwys Ymholiad Rhan We, Am-edrych Gwerth Colofn a XSL

Mae gennyf enw colofn mewn math o gynnwys enwir "Eiddo tiriog lleoliad".

Yw bod colofn math "chwilio am".

Rydw i wedi'i addasu <CommonViewFields> a ItemStyle.xsl i ddangos y golofn.

A syml <XSL:gwerth o ddewis =…> dychwelyd yn ôl gwerth mewnol sy'n cynnwys data sefyllfa trefnolion, fel:

1;#Miami

I gael y gwerth ddynol-gyfeillgar, defnyddio xsl is-linyn sy'n derbyn, fel y dangosir:

<XSL:gwerth o ddewis = "substring-ar ôl(@ Real_x005F_x0020_Estate_x005F_x0020_Location,'#')"></XSL:gwerth o>

Defnyddiwch y dechneg hon pryd bynnag y byddwch yn gweithio gyda gwerthoedd am-edrych mewn trawsffurfiau XSL ac mae angen i gael y gwerth ddynol-gyfeillgar.

<diwedd />

Tagiau Technorati: , ,

Cyflym a hawdd: Penderfynu Enw'r Colofn Mewnol o Colofn Safle

Y NEWYDDION DIWEDDARAF: Jeremy Thake wedi blogio am hyn ac yn gosod rhai Cod cais consol sy'n dangos enwau mewnol.

Yr oeddwn yn ceisio cael rhan ymholiad cynnwys y we i arddangos dyddiad dyledus o dasg ac oherwydd bod y label sgrîn yn "Dyddiad Cwblhau", Rwy'n cymryd yn ganiataol bod yr enw golofn i'w defnyddio wrth <CommonViewFields> yw "Due_x0020_Date".

Anghywir!

Mae'r enw golofn go iawn yn yr achos hwn oedd "DueDate".

Sut oeddwn yn ei chael yn? Ailddarllenais grug Solomon cofnod blog ar addasu CQWP dangos colofn ychwanegol o ddata. Disgrifia y broses hon ar gam #13. Ymddiried ynddo. Mae'n gywir. Leiaf, yr oedd yn gywir i mi. Nid wyf yn ymddiried ynddo yn gyntaf ar gyfer Colofn arall gydag enw llawer hirach.

Yr wyf yn dweud "yr Ymddiriedolaeth ei" oherwydd nid oedd yn ymddiried ynddo ac yn fwy na thebyg yn cael ei wastraffu bron dwy awr yn atal fy mhen yn erbyn wal. Ar ôl datrys yr "DueDate" Enw, Roeddwn i eisiau ychwanegu maes arall i <CommonViewFields>. Gan ddefnyddio'r dechneg Solomon, Yr oeddwn yn cael enw colofn fel "XYZ_x0020_Project_x0020_Due_x00".

Roeddwn i'n meddwl i mi fy hun, Mae'n amlwg bod enw fyrrach. Euthum ymlaen a heb ei chwtogi yn llwyddo. Yn olaf, defnyddiais yr enw bob golwg fyrrach a gweithiodd.

Blaen Bonws: Pan oeddwn yn gweithio gyda'r CQWP, os ydw i'n ychwanegu enw drwg mewnol i <CommonViewFields>, Byddai y CQWP yn dweud wrthyf fod yr ymholiad dychwelyd unrhyw ganlyniadau. Ond, os ydw i'n ychwanegu fath ddata i'r enw maes, Byddai yn dychwelyd o ganlyniad. Ychwanegu data Roedd math mewn gwirionedd yn cuddio problem ers yr oedd yn cyfeirio at faes anfodol. Gellid ei ychwanegu, ond pan Ceisiais ddangos ei werth, Byddwn bob amser yn cael wag.

Nid oedd hyn yn cuddio y gwall:

<CommonViewFields>Due_x0020_Date;</CommonViewfields>

Mae hyn yn cuddio y gwall:

<CommonViewFields>Due_x0020_Date,Wedi ei gyflwyno gan;</CommonViewfields>

</diwedd>