Sharepoint> Какие символы * не * разрешены в списке? - PullRequest
1 голос
/ 07 января 2011

Я пытался найти это и не нашел ответ, который я ищу;Я нашел то, что не может быть включено в имена файлов, имена папок и имена сайтов ... но ничего в реальных полях списка.

Я заметил, что символ процента (%) запрещен вфайлы / сайты / папка.Но он также не заполняется, когда я пытаюсь программно добавить поля в список.Я делаю это с помощью небольшого приложения на C #, которое отправляет данные через встроенные веб-службы Sharepoint 2010.Я могу вручную ввести символ, но он испортит каждое поле в строке, если я попробую его через код.

Я пробовал некоторые из escape-символов, которые я нашел через Google (_x26), нопохоже, они тоже не работают.У кого-нибудь еще была проблема с этим?Если эти символы разрешены, как я могу избежать их при отправке данных через вызов веб-службы?

Заранее спасибо!

Джастин

Ответы [ 4 ]

2 голосов
/ 07 октября 2013

Символы не допускаются в имени файла SharePoint:
~, #,%, &, *, {,}, \,:, <,>,?, /, |, "

Вставлено из http://chrisbarba.com/2011/01/27/sharepoint-filename-special-characters-not-allowed/

2 голосов
/ 07 января 2011

Любые символы, которые не допускаются при вводе имени поля, кодируются во внутреннем имени.Формат немного отличается от того, что вы показываете - попробуйте "_x0026 _".

Я обычно избегаю проблем со странными внутренними именами, создавая поле без пробелов или специальных символов в имени, а затем переименовывая его.При переименовании поля изменяется только отображаемое имя, и вы сохраняете простое внутреннее имя.

0 голосов
/ 03 октября 2018

В качестве ответа на ответ @ Elisa, приведен код JavaScript / TypeScript, который помогает запретить пользователям загружать в SharePoint файлы с недопустимыми символами в имени файла , реализованные в формах Nintex.

Вот суть версии JavaScript (обратите внимание, что вам, очевидно, придется адаптироваться к вашим собственным потребностям, поскольку она была разработана для Nintex):

//------------------------------------------------------------------------
//JavaScript Version:
//Code from http://cc.davelozinski.com/tips-techniques/nintex-form-tips-techniques/javascript-typescript-for-nintex-forms-to-validate-file-names
//------------------------------------------------------------------------
function validateAttachmentNames(eventObject) {
 var textbox$ = NWF$(this);
 var attachrowid = this.id.substring(10, 47);
 var fileUploadid = attachrowid;
 var index = attachrowid.substring(36);
 //console.log('index:' + index);
 //console.log('attachrowid:' + attachrowid);
 //console.log('fileUploadid:' + fileUploadid);
 if (index == '') {
 attachrowid += '0';
 }
 var fileName = NWF.FormFiller.Attachments.TrimWhiteSpaces(textbox$.val().replace(/^.*[\\\/]/, ''));
 var match = (new RegExp('[~#%\&{}+\|]|\\.\\.|^\\.|\\.$')).test(fileName);
 if (match) {
 isValid = false;
 setTimeout(function () {
 NWF$("tr[id^='attachRow']").each(function () {
 var arrParts = (NWF$(this).find(".ms-addnew")[0]).href.split('"');
 var fileName = arrParts[5];
 var attachRow = arrParts[1];
 var fileUpload = arrParts[3];
 var match = (new RegExp('[~#%\&{}+\|]|\\.\\.|^\\.|\\.$')).test(fileName);
 if (match) {
 console.log(fileName);
 NWF.FormFiller.Attachments.RemoveLocal(attachRow, fileUpload, fileName);
 alert('Invalid file: ' + fileName + '  You cannot attach files with the following characters ~ # % & * { } \ : < > ? / + | \n\nThe file has been removed.');
 }
 });
 }, 500);
 }
}
0 голосов
/ 09 января 2011

Я говорю что-то странное, когда утверждаю, что обычно для некоторых персонажей есть причина, по которой они не допускаются.Я не знаю, что или почему, но, вероятно, есть причина.

Поскольку вы контролируете, какие поля должны быть там, вы также можете диктовать их (внутренние) имена.Я бы сказал, следуйте рекомендациям и назовите свои поля, используя случай с верблюдом.А поскольку вы создали их, вы можете просто сопоставить поля с соответствующими полями в вашем источнике данных.

...