Швидкий і простий: Надання веб-сайту за допомогою SharePoint об'єктної моделі у C#

Я спробував, що шукають трохи фрагмент коду, що б показати, наскільки я можу створити новий SPWeb колекції сайтів. Я не знайшов це як швидко або легко, як я очікував, тому я думав, я б ляпас разом мало запис на предмет.

Цей код створює вікі-сайт:

 SPSite колекція _ сайтів;

    колекція _ сайтів = нові SPSite("http://conchang-o9l8qi");

    SPWeb w = siteCollection.OpenWeb();

    w.Webs.Add("xyzzy", "назву xyzzy",
        "xyzzy Опис", 1033, SPWebTemplate.WebTemplateWIKI, ХИБНІСТЬ, ХИБНІСТЬ);

Мої початкові результати пошуку не вдалося, оскільки я шукав фрази як "підготувати веб-сайт, використовуючи об'єктну модель sharepoint" і тому подібне.

Якщо ви Пошук для "Webs.Add()", Ви зможете знайти цілий ряд дуже корисно записи в щоденнику, MSDN статей та SDK документації, які входять в глибину на цю тему. Я безумовно рекомендую Цей сайт.

</кінець>

Підписатися на мій блог.

Бірки Technorati:

Інтеграції з веб-служб SharePoint Designer робочі процеси

Я грав в околицях з настроювані дії для SharePoint Designer протягом деякого часу (Дивіться тут для деяких докладні речі, Якщо це вас цікавить).

На мій поточний проект, нам необхідно зробити деякі досить важкої роботи, і ми хочемо використовувати декларативні СДПН робочий процес для керування зв'язаного бізнес-процесу.

Коротше кажучи, Це цілком можливо. Я розширеної моєї Codeplex проект для виклику "допоміжні служби" і тепер ми можемо посилатися веб-служби безпосередньо від СДПН документообігу.

Ось підпис:

 громадських рядок Диспетчерський(
        GUID WebID, // Проходили повз робоче середовище
        GUID SiteID, // Проходили повз робоче середовище
        рядок Ідентифікатор списку, // Проходили повз RTE (не знаю, чому це рядок, не GUID)
        Int ListItemID, // Проходили повз RTE.
        рядок XmlMessage) // Пройшло користувачем як оголошений в СДПН.

Це використовує той факт, що ми можемо отримати інформацію про важливі робочого циклу, сподобався сайт, Список Ідентифікаторів, д. Це добре документована в декількох місцях для тих з вас зацікавлений у створенні власноруч дія. Ідея полягає в тому, щоб витягти XML рядків, надані користувачем на розсилання відповідний процедуру. Fun stuff!

На жаль, Це, очевидно, квиток в один бік до "Loosey Goosey" анти-модель землі, but it’s better than hitting a brick wall 🙂

Це анти-шаблон, якщо ви робите це, незважаючи на те, що ви знаєте, це анти-шаблон?

Я сподіваюся, щоб обернути цю всередині Codeplex в найближчому майбутньому. Якщо ви зацікавлені в мене так, Дайте мені пхати (Електронна пошта або залишити коментар) and I’ll be that more enthusiastic about doing it 🙂

</кінець>

Підписатися на мій блог.

Бірки Technorati: ,

Неділя Funny: “Я цікаво, якщо ваш пароль …”

Я нещодавно купив обід для мого брата (як завжди) і ми опинилися говорити про смішні речі, які ми зробили на нашому відповідних художніх закладів. На моїй альма-матер, Lafayette коледж, академічні підтримка ІТ-відділ має дуже включно чином про це. Ми отримали багато мотузку і я скористався цим часом.

Два моїх улюблених спогади пов'язані з моїм хорошим другом, Гейб. Він зробив жахливі помилку, розповідаючи людям свого першого курсу, що "я першокурсник, але в мене є другокурсниця стоячи" через різні класи передові розміщення він прийняв, д. Аналогічним чином, багато хто з нас були розташовані, але ми не говоримо про це так набагато. Його старший році, Коли ми познайомив його з людей, Ми хотіли б сказати "це є Гейб. Він є старшим, Проте, другокурсниця стоячи ".

Коледж мав деякі сонце робоча станція/серверів X-Window. Вони мали гігантські монітори та інженери використали їх протягом CAD та інші нудно речі інженер. Ми CS чоловік використовував їх, щоб дізнатися програмування і, Звичайно, грати в ігри.

Ми не як комп'ютерних безпорадною інженерів, щоб багато, так що один з наших улюблених речей робити було б telnet на полі вони були на і запустити X-око на них. Це б спливав пара очей, які пішли миші екрану. Ви могли б поп-навіть більше і буквально десяток або більше з X-око програм, запущених. Try not to laugh out loud when a hapless engineer is trying to close X-eye after X-eye and muttering under his breath about it 🙂

Ми також грав X-треку на ці ящики. Що робити, вам довелося завантажити вихідний, отримати різних залежностей, скрізь, де ви могли б їх знайти і будувати його. Я не був складний C програміст, але я міг читати файли заголовків. Я переглядав дані і знайшов директиви як "#DEFINE MAX_TORPEDO_DISTANCE 10". Я грав з які збільшують діапазон і потужності для фази і торпеди, вона була оновлена і потім знищив Гейб наступного разу ми грали.

Гейб також був великим фанатом ТВ-шоу під назвою Блейка 7. Я ніколи не бачив його, але це не заважає мені наполягаючи на тому, що д-р. Хто це чудове шоу. The arguments would get heated at times 🙂

Одного разу, він думав, що я міг би, напевно, здогадуєтеся його UNIX пароль. Я сів поруч з ним один день і було оголошено в гучний тон, "Я буду вгадати пароль прямо зараз, Гейб." "так, право" його відповідь. Я потім увійти в систему, введені його ідентифікатор користувача, повернувся до нього обличчям, набирається і сказав уголос, "Цікаво, якщо це B-L-A-K-E-7" ? Сенсорний ввід ніколи не окупилася красиво, як це було зроблено в той день.

Наступного тижня (чи скоро): Більше комп'ютер витівки кімнату з коледжу.

У вас є будь-який робити? Залишити коментар або електронною поштою мені і я буду опублікувати їх тут.

</кінець>

Підписатися на мій блог.

Бірки Technorati:

Незначні публічних заяв: Настройки Windows Live безпеки і контактування простір власників

Я отримав кілька повідомлень від фізичних осіб за допомогою вбудованої "Надіслати повідомлення" функція Microsoft надає live spaces (які організовують мій блог) кожен місяць.

Близько однієї третини випадків, цих користувачів були забезпечені свого облікового запису live spaces, така, що я не можу відповісти. Це не якийсь анти-спам функцію я припускаю.

</кінець>

Просте пояснення: “Значення не потрапляють в межах очікуваного діапазону.”

ОНОВЛЕННЯ: Анонімні плакати, що залишив великий коментар про внутрішні імена. Не забудьте прочитати його.

Під час роботи з подією приймачів і інший код, який посилається елементи списку SharePoint за допомогою об'єктної моделі, Я часто роблять помилки, які генерують ця помилка під час виконання:

Помилка під час завантаження та запуску події приймач Conchango.xyzzyEventReceiver в xyzzy, Версія = 1.0.0.0, Культура = нейтральні, PublicKeyToken = 0dc50a750396c3ac. Додаткова інформація знаходиться нижче. : Значення не потрапляють в межах очікуваного діапазону.

Я думаю, що це досить загальних помилок, що потенційно викликала багато різних способів. Однак, один просте пояснення в тому, що я перебуваю посилань поле неправильно. Якщо ім'я поля «Due Date», Я повинна посилатися на нього як це у випадку ресивер:

властивості.Елемент списку["Термін"]

Коли я друкарські помилки або використовувати випадок неправий, коли посилання на поле, SharePoint генерує вище згаданих помилка виконання. Наприклад, це неправильно:

властивості.Елемент списку["термін"]

</кінець>

Підписатися на мій блог.

Бірки Technorati:

Швидкий Підказка кінцевого користувача: Сортування поданнями в бібліотеці документів, Список, д.

Ми можемо, слід і створити багато подання у списках SharePoint (бібліотеки документів, Настроювані списки, д). Завжди списки SharePoint доступних виглядів в алфавітному порядку. Ми не можемо змінити це використання поза коробки функціональність. Якщо це може бути зроблено через налаштування (і я не впевнений, він може), це далеко до технічної за ваш типовий кінцевий користувач.

Якщо ви хочете контролювати порядок в якому SharePoint містить список доступних виглядів, просто prepend номер або літера, щоб ім'я подання, як і в:

1 – За типом матеріал
2 – Всі документи
3 – Термін дії

-або-

A – За типом матеріал
B – Всі документи
C – Термін дії

Я також створив переглядів, метою яких є строго годувати KPI. Я був після цього іменуванні:

Z_KPI_[Опис]

Що викликає мою "КПІ" вид з'являтися в нижній частині списку.

</кінець>

Підписатися на мій блог.

Неділя Funny: “Коли я був маленьким хлопчиком”

Як батько, Где-то вздовж лінії, я виявив, що "коли я був маленьким хлопчиком" трюк.

Мій син, ймовірно, чотири або п'ять в той час, грав повітряна куля і, як самих маленьких хлопчиків, які грають з повітряними кульками, він вискочив його. Він був дуже засмучений. Світ прийшов до кінця. Я сказав йому:, "коли я був маленьким хлопчиком, Я був на повітряній кулі, і він вискочив і врешті-решт, Я отримав новий повітряна куля." Він, здавалося, щоб допомогти йому справитися з його втрати і призвело до весело говорити про те, що це було, як коли я був маленьким хлопчиком.

Яка працювала Ну як розраду техніку і я використав його кілька разів протягом наступного періоду часу. Я потрапити в біду, одного разу коли його ранчо монстр 3 істота помер. Я говорив про те, як моя собака, Принц, померла в автомобільній аварії. Цього разу, його відповідь була, "Зараз я відчуваю себе погано про дві речі!" Я ухилявся від використання на ", коли я був маленьким хлопчиком" Техніка для розраду після цього.

Перед інцидент мертві собаки, Однак, Я також почав використовувати техніку, щоб переконати його справами, щоб робити. "Коли я був маленьким хлопчиком, Мені довелося піти і отримати газета", "чистити мою кімнату", "отримати мама її чашки кави", д.

Це теж був дуже успішним на деякий час, але він почав все частіше повстати проти тиранії мого дитинства. Одна подія, зокрема, ознаменував кінець. Я сказав йому, щоб повернути сміттєві баки від бордюр до гаража. Він стверджував, і я відповів, "Коли я був маленьким хлопчиком, Мені довелося забрати сміття в гаражі." Він відповів, "Ах так! Ну, коли ви були маленьким хлопчиком, Це було настільки ДУРНИЙ!".

</кінець>

Підписатися на мій блог.

Бірки Technorati:

Погляди і стовпців у списках і бібліотеках документів не можуть бути забезпечені

ОНОВЛЕННЯ (02/29/08): Цей новий проект codeplex забезпечує здається способом кріплення окремих стовпчиків: http://www.codeplex.com/SPListDisplaySetting. Якщо у вас є будь-який досвід роботи з ним, будь ласка, залиште коментар.

Форум плакати часто Задавайте питання, як цей: "У мене є подання керівника та і персонал подання списку. Як убезпечити подання керівника, щоб співробітники не можете використовувати його?"

Вони також часто задавайте пов'язане з цим питання: Я хочу, щоб забезпечити конкретні метаданих стовпця, щоб лише керівники можуть редагувати цього стовпця, у той час як інші можуть навіть не бачили його."

Ці відповіді застосувати до обох WSS 3.0 та ЛИШАЙНИК:

  • SharePoint не надають поза коробки для забезпечення переглядів.
  • SharePoint не надають поза коробки для безпеки стовпців.

Є кілька методів один можна стежити, щоб задовольнити ці види вимоги безпеки. Ось те, що я можу думати про:

  • Використання поза коробки елемент рівня безпеки. Вид завжди честь елемент рівня безпеки конфігурації. Подія приймачів і/або робочого процесу можна автоматизувати безпекою завдання.
  • Використовувати особисті погляди, бо "привілейованих" переглядів. Це досить легко налаштувати. Однак, Завдяки своїм особистим"" Природа, вони повинні бути налаштована для кожного користувача. Використання стандарту безпеки конфігурації запобігти створенню особисте подання з.
  • Використання веб-частині подання даних та реалізації свого роду обрізки рішення AJAXy безпеки.
  • Рол свій власний список функцій дисплея і включити фільтрування за ролями безпеки на рівні стовпців.
  • Змінення форми для вводу даних і використовувати JavaScript в поєднанні з модель безпеки здійснити фільтрування за ролями безпеки рівня стовпця.
  • За допомогою форми InfoPath для введення даних. Здійснити фільтрування за ролями безпеки рівня стовпця через web викликів служби SharePoint і умовно приховати поля, якщо необхідно.
  • Рол свій ASP.NET даних запис функція, яка реалізує фільтрування за ролями безпеки рівня стовпця.

Жодне з цих варіантів не є дійсно такі великі, але є щонайменше шлях, щоб слідувати, якщо вам потрібно, навіть якщо це важко.

ПРИМІТКА: Якщо ви зійдіть на будь-який з цих шляхів, не забувайте про "дії-> Відкрити за допомогою провідника Windows". Ви хочете бути впевнені, що ви перевірити в цю функцію, щоб переконатися, що він не працює як "задні двері" і перемогти безпеки схема.

Якщо у вас є інші ідеї для або досвід роботи із забезпечення стовпців або переглядів, Будь ласка Напишіть мені або залишити свій коментар, і я буду оновлювати цей коментар відповідно.

</кінець>

Підписатися на мій блог.

Бірки Technorati:

Швидкий Підказка: Номери версій BDC ADF є вашим другом

Якщо ви маєте ручне кодування ADF файли і робити багато коду, імпорт, тестового циклу, використовувати номер версії, щоб зробити ваше життя простіше.

Терпіти не можу визнати це, але до цього тижня, Я завжди був видалення ADF і повторного імпортування цього. Це б порушити мій стовпцях бізнес-даних і зробити мене Re-wire їх. Все зайве.

Це файл під "це очевидно, як тільки ви його бачите".

Приклад:

<Бізнес-система
xmlns:XSi="http://www.w3.org/2001/XMLSchema-Instance" XSi:schemaLocation="http://schemas.Microsoft.com/Office/2006/03/BusinessDataCatalog BDCMetadata.xsd" Тип="Веб-служба" Версія="1.2.0.0" Ім’я="xyzzyDocumentReview" xmlns="http://schemas.Microsoft.com/Office/2006/03/BusinessDataCatalog">

Змінити цю версію та знову імпортувати і автоматично наявний стовпець бізнес-даних використовує оновлену версію з не додаткових налаштувань, необхідні.

</кінець>

Підписатися на мій блог.

Бірки Technorati:

Рішення: BDC палітра показує лише один стовпець результатів

У мої поточні спроби надання за більш корисним стовпця підстановки за допомогою каталогу бізнес-даних, Я вдарив стіна з палітрі ПБД.. Якщо ви ще не бачу, палітрі BDC схожий на засіб вибору користувачів за винятком того, що він працює з стовпців типу «бізнес-даних».

Доступ до палітрі, натиснувши на іконку відкриту книгу стовпець бізнес-даних як показано:

зображення

Зображення вище показує стовпець бізнес-даних під назвою "Майстер ідентифікаторів документів". Цей стовпець підключено, за допомогою служби ПБД, веб-служби. Веб-служба повертає двох стовпців із відомостями: Ідентифікаторів документів і заголовок. Бізнес-цілей тут полягає в наданні на "цей документ на основі" функція. Виберіть "Майстер" документ, і коли вони врятувати, подія приймач копіювання meta даних полів із посилаються майстер.

За промовчанням, палітрі BDC виглядає так під час пошуку документа ID = "38":

clip_image002

Ця функція корисна, але не досить добре,. Люди не думаю, що з точки зору ідентифікатори, вони думають, що з точки зору назв та/або інших мета-дані. Палітрі дозволяє здійснювати пошук за іншими стовпцями (Наприклад. Назва) але не буде показувати фактичні Список титулів він знайшов, просто їх ідентифікатор, як показано тут:

clip_image002[1]

(Знімок екрана не настільки велика, тому що я не беру пошуку, яка повертає будь-які діє результати, але ви можете бачити, що, якщо він знайшов деякі результати, Він лише буде показаний на ідентифікатор, не титули).

Я шукав високих і низьких відповідь на це і не вдалося. Мій колега, Преподобний Джонатан Бредшоу, мав стикаються і вирішив цю проблему. Коли я потягнувся до нього за допомогою, він вказав мені на правильному напрямку.

Налаштувати палітру показати кілька стовпців за допомогою "ShowInPicker" Нерухомість в ADF:

<Майно Ім’я="ShowInPicker" Тип="System.Boolean">Істина</Майно>

Детальніше:

  <!-- Назва -->
  <Дескриптор типу Параметр TypeName="Належить" Ім’я="Назва" >
    <LocalizedDisplayNames>
      <LocalizedDisplayName КОД МОВИ="1033">Назва</LocalizedDisplayName>
    </LocalizedDisplayNames>
    <Властивості>
      <Майно Ім’я="DisplayByDefault" Тип="System.Boolean">Істина</Майно>
      <Майно Ім’я="ShowInPicker" Тип="System.Boolean">Істина</Майно>
    </Властивості>
  </Дескриптор типу>

Цю властивість ввести незначні проблеми. Як тільки ви встановите її один раз, Ви повинні встановити це для кожного стовпця, ви хочете, щоб показати. У моєму випадку, BDC палітра показав ідентифікатор за промовчанням. Однак, одного разу я додав "ShowInPicker" титул, Ідентифікатор більше не відображаються. Я вирішив, що, явно встановлюючи властивість ShowInPicker для Ідентифікатора Doc.

Ось результат:

зображення

(Я поясню дивним "168 – CamlSchema.xsd" Незавершене будівництво майбутнього блогу. Коротше кажучи, Це каскадними рядок, який дозволяє трохи кращого користувацького досвіду).

Звичайно, Написав цей запис у блозі, Я просто зробив пошук по "ShowInPicker" і знайшов численні хіти, включаючи і цю: http://msdn2.microsoft.com/en-us/library/ms583986.aspx. Це пояснює значення цього майна, а також деякі інші хороші речі каталогу бізнес-даних.

</кінець>

Підписатися на мій блог!

Бірки Technorati: