积极答复者
MSCRM2011 关于从Internet用web service更新crm数据的问题

问题
答案
-
是的,你可以在IE上先打开
http://crm2011rc/<orgname>/xrmservices/2011/organization.svc
刀客 | MSN:caims@techsun.com | BLOG:http://caims.cnblogs.com | 提供微软CRM高级开发顾问外包- 已标记为答案 路人学步 2011年2月28日 9:47
全部回复
-
在SDK的samplecode\js\restendpoint\jscriptrestdataoperations\jscriptrestdataoperations\scripts文件夹下有样例代码jscriptrestdataoperations.js,下面是摘抄的一段,希望对你所有帮助
var ODataPath;
var startTime; //So that the duration time can be captured.
var accountName = "Sample Account";
var serverUrl;function init() {
// Set Global Variables
var context = GetGlobalContext(); //GetGlobalContext function exists in ClientGlobalContext.js.aspx
serverUrl = context.getServerUrl();
ODataPath = serverUrl + "/XRMServices/2011/OrganizationData.svc";
startTime = new Date();
createAccountRecord(accountName);
}function createAccountRecord(Name) {
showMessage("createAccountRecord function START");
var account = new Object();
account.Name = Name;
var jsonAccount = window.JSON.stringify(account);var createAccountReq = new XMLHttpRequest();
createAccountReq.open("POST", ODataPath + "/AccountSet", true);
createAccountReq.setRequestHeader("Accept", "application/json");
createAccountReq.setRequestHeader("Content-Type", "application/json; charset=utf-8");
createAccountReq.onreadystatechange = function () {
createAccountReqCallBack(this);
};
createAccountReq.send(jsonAccount);
showMessage("createAccountRecord function END");
}
daemon lin -
我的理解,你的这种情况,必须使用C#代码来实现了,以为使用JQuery是必须基于同一个CRM系统内的,否则会出现认证的问题。如果是C#代码,那么就是在创建OrganizationServiceProxy时,注意传入的ClientCredentials参数,分别能够正确对应到相应组织的用户信息。其他的应该没有什么了。
daemon lin
你好,谢谢,你能说的再具体点吗,"注意传入的ClientCredentials参数,分别能够正确对应到相应组织的用户信息。其他的应该没有什么了。"你的意思是不是就是跟普通情况下初始化Web Service一样吗,如果不是最好能给出相应的初始化实例,先谢谢了~~
crm4.0学步 -
Uri orgServiceUri = new Uri("http://crm2011rc/<orgname>/xrmservices/2011/organization.svc");
IServiceConfiguration<IOrganizationService> orgConfigInfo =
ServiceConfigurationFactory.CreateConfiguration<IOrganizationService>(orgServiceUri);
var creds = new ClientCredentials();
creds.Windows.ClientCredential = new NetworkCredential("administrator", "password","demo");
OrgService = new OrganizationServiceProxy(orgConfigInfo, creds);
var osp = OrgService as OrganizationServiceProxy;
WhoAmIRequest req = new WhoAmIRequest();
var response = OrgService.Execute(req) as WhoAmIResponse;
MessageBox.Show("You are connected as userid " + response.UserId.ToString());
刀客 | MSN:caims@techsun.com | BLOG:http://caims.cnblogs.com | 提供微软CRM高级开发顾问外包 -
非常感谢,也就是对于crm2011来说,初始化时跟普通情况下访问web cervice一样,不需要像部署过ifd的crm4那样还要先取得ticket。再补问确认下,是不是"Uri orgServiceUri = new Uri("http://crm2011rc/<orgname>/xrmservices/2011/organization.svc");"中的url只要用部署过IFD后在外网访问的地址就行了~~
crm4.0学步 -
是的,你可以在IE上先打开
http://crm2011rc/<orgname>/xrmservices/2011/organization.svc
刀客 | MSN:caims@techsun.com | BLOG:http://caims.cnblogs.com | 提供微软CRM高级开发顾问外包- 已标记为答案 路人学步 2011年2月28日 9:47