Цель состояла в том, чтобы создать нечто похожее на обычную структуру с папками, подпапками, где вы можете просто отбрасывать изображения и другие файлы на стороне клиента и ссылаться на них по относительному URL.
И, наконец, решением было создать модуль с файлами, что довольно просто в Visual Studio 2010 - Добавить новый элемент -> Sharepoint -> Модуль.
Затем вы можете просто создавать / удалять файлы / папки, и список файлов в elements.xml поддерживается Visual Studio. Они не включены ни в одну библиотеку, но могут быть использованы и загружены по мере необходимости.
Одна важная вещь - дать модулю уникальное имя или добавить атрибут Url (который является префиксом url), чтобы он не конфликтовал с файлами из других решений.
Вы ссылаетесь на файлы, затем используете
web.ServerRelativeUrl + "/YourModuleName/yourfile"
Или, если вы указали URL в elements.xml (<Module Name="YourModuleName" Url="YourUrl">
)
web.ServerRelativeUrl + "/YourUrl/YourModuleName/yourfile"
Если вы развернете функцию с модулем в веб-области, web
будет SPContext.Current.Web
, а в области сайта - SPContext.Current.Site.RootWeb
И если есть необходимость получить содержимое файла, вы можете сделать это с помощью
web.GetFile("YourModuleName/yourfile")
Статья о включении файлов JavaScript, в частности, в которой используется модуль здесь .