2009-08-26 14 views
21

में प्रोग्रामेटिक रूप से आइटम कैसे जोड़ सकता हूं, मैं वास्तव में या तो एक छोटा कोड स्निपेट या विषय पर एक अच्छा ट्यूटोरियल ढूंढ रहा हूं।शेयरपॉइंट: मैं एक कस्टम सूची उदाहरण

मेरे पास एक सी # कंसोल ऐप है जिसे मैं किसी भी तरह से अपनी कस्टम सूची में सूची आइटम जोड़ने के लिए उपयोग करूंगा। मैंने एक कस्टम सामग्री प्रकार भी बनाया है। तो सुनिश्चित नहीं है कि मुझे इस सामग्री प्रकार से सी # कक्षा बनाने की भी आवश्यकता है। शायद नहीं।

अग्रिम धन्यवाद

उत्तर

30

में मुझे लगता है कि इन दोनों ब्लॉग पोस्ट अपनी समस्या का समाधान आप मदद करनी चाहिए।

http://blog.the-dargans.co.uk/2007/04/programmatically-adding-items-to.html http://asadewa.wordpress.com/2007/11/19/adding-a-custom-content-type-specific-item-on-a-sharepoint-list/

ही चलना के माध्यम से:

  1. सूची आप आइटम में जोड़ना चाहते हैं की एक उदाहरण है।
  2. सूची में एक नया आइटम जोड़ें:

    newItem["ContentTypeId"] = <Id of the content type>; 
    
  3. :

    SPListItem newItem = list.AddItem(); 
    
  4. क्या आप नए आइटम के लिए सामग्री प्रकार आईडी सेट करने के लिए किसी सामग्री प्रकार के लिए नए आइटम के लिए बाध्य करने के लिए अपने सामग्री प्रकार के भीतर निर्दिष्ट फ़ील्ड सेट करें।

  5. अपने परिवर्तनों को कमिट:

    newItem.Update(); 
    
16

डाल करने के लिए यह आसान आप चरण का पालन करना होगा।

  1. आप आवेदन करने के लिए Microsoft.SharePoint.dll को संदर्भित करने की जरूरत है।
  2. सूची नाम मानना ​​परीक्षण है और इसमें केवल एक फ़ील्ड "शीर्षक" कोड है।

     using (SPSite oSite=new SPSite("http://mysharepoint")) 
        { 
         using (SPWeb oWeb=oSite.RootWeb) 
         { 
          SPList oList = oWeb.Lists["Test"]; 
          SPListItem oSPListItem = oList.Items.Add(); 
          oSPListItem["Title"] = "Hello SharePoint"; 
          oSPListItem.Update(); 
         } 
    
        } 
    
  3. ध्यान दें कि आप एक ही सर्वर जहां SharePoint स्थापित किया गया है में इस एप्लिकेशन को चलाने की जरूरत है।

  4. आप कस्टम सामग्री प्रकार

+0

क्या आप इस 'इस सर्वर को उसी सर्वर में चलाने की आवश्यकता है' पर अधिक विस्तृत कर सकते हैं? क्या होगा अगर मैं SharePoint.dll का उपयोग करके एक सर्वर में यह ऐप बनाउंगा और इसे अन्य SharePoint साइट्स के लिए चलाऊंगा। – Yogesh

9

आप कुछ इस तरह कर रही है अपने कस्टम SharePoint सूची में किसी आइटम बना सकते हैं के लिए एक कस्टम वर्ग बनाने की जरूरत नहीं:

using (SPSite site = new SPSite("http://sharepoint")) 
{ 
    using (SPWeb web = site.RootWeb) 
    { 
     SPList list = web.Lists["My List"]; 
     SPListItem listItem = list.AddItem(); 
     listItem["Title"] = "The Title"; 
     listItem["CustomColumn"] = "I am custom"; 
     listItem.Update(); 
    } 
} 

list.AddItem का उपयोग करना() को सूचीबद्ध किए गए सूचियों को सहेजना चाहिए।

+0

सूची। Additem() 2007 के संस्करणों के लिए है जैसा कि मैं समझता हूं। 2007 में - केवल सूची। इटम्स। जोड़ें(), (जो प्रदर्शन दृश्य से बदसूरत है) –

4

यह है कि यह कैसे माइक्रोसॉफ्ट की साइट पर किया गया है, के साथ मुझे बस इन के बाद से SPSite और SPWeb फेरबदल पर्यावरण के लिए पर्यावरण से भिन्न हो सकता है और यह कड़ी मेहनत से कोड करने के लिए इन नहीं मदद करता है:

using (SPSite oSiteCollection = new SPSite(SPContext.Current.Site.Url)) 
{ 
    using (SPWeb oWeb = oSiteCollection.OpenWeb(SPContext.Current.Web)) 
    { 
     SPList oList = oWeb.Lists["Announcements"]; 
     // You may also use 
     // SPList oList = oWeb.GetList("/Lists/Announcements"); 
     // to avoid querying all of the sites' lists 
     SPListItem oListItem = oList.Items.Add(); 
     oListItem["Title"] = "My Item"; 
     oListItem["Created"] = new DateTime(2004, 1, 23); 
     oListItem["Modified"] = new DateTime(2005, 10, 1); 
     oListItem["Author"] = 3; 
     oListItem["Editor"] = 3; 
     oListItem.Update(); 
    } 
} 

स्रोत : SPListItemClass (Microsoft.SharePoint)। (2012)। 22 फरवरी, 2012 को http://msdn.microsoft.com/en-us/library/microsoft.sharepoint.splistitem.aspx से पुनर्प्राप्त।

संबंधित मुद्दे