SharePoint: الفرق بين العنوان والاسم ومسمى لمجلدات المكتبة

StackOverflow https://stackoverflow.com/questions/2025137

  •  19-09-2019
  •  | 
  •  

سؤال

آسف إذا طلب هذا في مكان آخر. لقد بحثت ولكن لا يمكنني العثور على أي إجابات نهائية.

أنا أكتب تطبيقا ل SharePoint 2010 يحتاج إلى إنشاء مجلدات في مكتبة المستندات؛ واحد لكل "وظيفة" أن التطبيقات التطبيقات، كمكان لوضع إخراج الوظيفة. ولكن، أواجه مشاكل في تصادمات اسم المجلدات. يتم ترميز كل "وظيفة" كملف XML في قائمة SharePoint أخرى. على سبيل المثال، قد يحتوي على ملف XML يسمى "من Docx إلى PDF.xml". حتى الآن لدي التطبيق إنشاء مجلدات فرعية في قائمة الإخراج باستخدام اسم ملفات الوظيفة ناقص الملحق. لذلك، مجلد يسمى "من Docx إلى PDF" في هذه الحالة. ولكن، في وقت لاحق، قد يتعين على التطبيق إعادة معالجة نفس الوظيفة بالضبط. أريد أن أكون قادرا على امتلاك مجلد فرعي آخر في نفس القائمة كأول مرة، مع نفس الاسم بالضبط المرئي للمستخدم في متصفح ...

يمكنك القيام بذلك في قوائم SharePoint؟ يبدو أن Splistems عادية لها اسم وعرض الخصائص وعنوان العنوان. من الواضح أن أحد هذه الأشياء يجب أن يكون فريدا، بحيث يمكن أن تحدد SharePoint بشكل فريد هذا البند. ولكن هذا هو؟ وهل نفس الشيء ينطبق على عناصر Spolder في قائمة؟ أعتقد هنا أريد أن أحصل على شيء مثل أسماء عرض المجلدات المكررة، ولكن الأسماء الداخلية الفريدة. هل لديك أي أفكار حول كيفية القيام بذلك؟ حتى الآن، فإن طريقة crappy بلدي شيء مثل هذا:

 private SPFolder CreateSubFolder(SPList list, string visibleFolderName)
    {           
        // create a new folder under the root folder
        SPListItem newFolder = list.AddItem("", SPFileSystemObjectType.Folder, visibleFolderName);            
        newFolder.Update();               
        return newFolder.Folder;
    }

من الواضح أن هذا لا يعمل. أي أفكار حول كيفية التغيير للحصول على نفس الاسم المرئي، ولكن DIFF أسماء داخلية (ربما تستخدم GUIDs ...)؟: D شكرا مقدما.

هل كانت مفيدة؟

المحلول

مثل في أنظمة الملفات العادية، يجب أن تكون المجلدات تحت نفس المجلد الفرعي فريدة من نوعها. وهكذا، المعلمة الأخيرة لل Add() يجب أن تكون الطريقة فريدة من نوعها، لأنه يشير إلى اسم المجلد.

يمكنك Asssisign بأمان عنوان مكررة بعد إنشاء المجلد، باستخدام هذه القطعة من التعليمات البرمجية:

SPListItem newFolder = list.Items.Add("", SPFileSystemObjectType.Folder, uniqueFolderName);
newFolder["Title"] = "New Folder"; // Can be duplicated
newFolder.Update();

الآن سيكون لديك مجلدات مع نفس الألقاب ولكن أسماء مختلفة. لا يزال، عند محاولة استعراض هذه المجلدات من Windows Explorer أو عرض القائمة الافتراضية SharePoint، سيظهر لك اسم المجلد (وهو أمر فريد)، وليس العناوين (التي تريدها). لذلك تحتاج إلى إنشاء عرض مخصص وعرض حقل العنوان بدلا من اسم المجلد.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top