-
10-12-2019 - |
Вопрос
У меня проблемы с проблемами, чтобы получить его бегать и хотеть задать вам, если вы знаете, если вы можете использовать CSOM в SP 2013 Farm Solutions?
Я постоянно получаю 401 несанкционированное исключение.
Вот как я создаю ClientContext:
this.webUrl = SPContext.Current.Web.Url;
this.siteUrl = SPContext.Current.Site.Url;
clientContext = new SP.ClientContext(this.webUrl);
clientContext.Credentials = CredentialCache.DefaultNetworkCredentials;
.
Как я хочу поделиться кодом между приложением AutoHosted SharePoint AutoHosted и My Farm Change, я должен использовать CSOM.
Решение
This won't work because of internal security checks of SharePoint, and deactivating them isn't recommended.
Therefore you abstract your main code and create a semi intelligent data binding layer in your class to load the data. Dynamically loading in the required namespace for reading in the data, by using reflection.
System.Reflection.Assembly asmbly;
asmbly = System.Reflection.Assembly.Load("Microsoft.SharePoint")
object clss;
clss = asb.CreateInstance("Microsoft.SharePoint.Foo")
Yes it would be a little more code, but if you abstract it properly and load the data into a List for example, then this code will be minimal.
Reference - Dynamic Namespace Imports and Switching:
http://www.codeproject.com/Articles/32828/Using-Reflection-to-load-unreferenced-assemblies-a