如何强制停止执行,直到异步函数完全执行完毕?
我正在为CRM创建Silverlight应用程序: 1- a usercontrol 是一种形式,该表格充满了使用异步/p>从CRM中检索的数据 2- a 打印按钮创建了usercontrol的实例并打印 我在执行的序列中遇到问题,导致打印按钮在没有数据的情况下打印USERCONTROL,这是在异步方法完成之前执行的. 我的代码如下: 用户控制: Public partial class ManagerContact : UserControl // constructor and functions ... async private void getData(string contactid) { // get some details of the contact QueryExpression query = new QueryExpression();
4 2024-04-26
编程技术问答社区
在microsoft dynamics crm 2011中为LOOKUP字段加值
我需要使用Microsoft Dynamics CRM 2011的XRM服务更新帐户中的查找字段. 需要一些想法.帮助 解决方案 CRM 2011中的查找字段是EntityReference,这意味着您需要了解该实体的LogicalName查找指向的LogicalName. 假设您已经连接到CRM(您可以将简化连接用作此示例: https://stackover.com/a/15930366/2191473 ) 您可以使用此语法设置查找字段: Entity recordToUpdate = service.Retrieve("contact", contactId, new ColumnSet(true)); recordToUpdate["parentcustomerid"] = new EntityReference("account", accountId); service.Update(recordToUpdate); 使用EntityRef
12 2024-04-26
编程技术问答社区
在CRM 2011插件上获得错误。"无效的URI。主机名无法被解析"。
我有一个插件,可在不同域上的不同框上使用.但是,我将其注册在一个特定的盒子上,每次触发适用的实体事件时,都会继续丢弃此错误.警告?该代码甚至没有执行. IE:iplugin.execute()接口实现是从未达到的.我只会获得的CRM对话框"无效的URI:无法解析主机名." 每次. 我已经确认未输入代码,因为我将Visual Studio附加到了适用的CRM流程.在其他盒子上,我可以踏入并没有任何问题.这就是我确定未达到代码的方式. 该插件已在CRM中注册,与其他机器上的插件相同.我将其放在特定的解决方案文件下方并发布(即使不是必需的步骤). 想法? 解决方案 我弄清楚了.我还认为一旦我弄清楚它本质上是愚蠢的. 摘要:未注册的旧插件. 详细信息: 这是一个先前开发的插件(单独的代码库)的重写,这两者都是围绕第三方Web调用的包装器.有问题的第三方将他们的旧肥皂终点重新分配给休息/JSON电话.肥皂呼叫在1/15/13正式离线. ...等待它...
24 2024-04-26
编程技术问答社区
在crm 2011中使用一个插件在功能区创建一个按钮用于更新一个实体
我在Dynamic CRM 2011中创建一个解决方案,用于发送短信 在我的解决方案中,我有2个实体,第一个用于发送SMS的实体,第二个用于保存SEND结果的实体. 我为第二实体创建插件,插件连接到Web服务,并检查发送和更新实体的结果,因此更新发送雕像的步骤应如下: 1-用户选择一个或多个实体,然后按下功能区中的自定义按钮 2- CRM运行我的插件并连接到Web服务并更新结果字段 因此,我创建插件并创建按钮,但是当按下按钮时,我不知道如何运行插件(C#代码). 如果有人知道这一点或对更新SMS结果有更好的解决方案,请告诉我. 注意:我注册了一个更新步骤和插件的PRE映像. 请帮助我. 解决方案 选项1(无JavaScript或自定义按钮): 在SMS实体上创建Check Send Status复选框.将您的插件从Send result实体移动到SMS实体的Update,并在将Check Send Status设置为true时
12 2024-04-26
编程技术问答社区
IOrganizationService更新实体的正确方法
我正在查看从C#内部更新/检索实体的最佳方法.我已经阅读了MSDN文档,但不确定哪种方法/何时使用任何一种方法. 所以,我的问题: 我应该使用: IOrganizationService.Update()并直接更新实体;或 IOrganization.Execute()并创建一个更新请求 ,如果答案是"取决于",什么情况需要哪种方法? 谢谢 解决方案 首先,更新和执行UpdatereQuest产生相同的结果. 主要区别在于可以使用executemultiplerequest 批处理updaterequest 其他解决方案 带有CreateRequest以及UpdateRequest您可以切换重复检测,如下示例: : public Guid CreateTest(Entity account, IOrganizationService service) { var request = new CreateReque
4 2024-04-25
编程技术问答社区
CRM Dynamics 2013 如何将当前登录的记录作为记录所有者传递给对方
我在CRM中有一个方案,我创建了一个MVC应用程序,该应用程序上传了Excel文件,对文件进行了一些验证,一旦记录验证,它将在CRM中创建新记录,我需要知道如何处理当前登录的用户在CRM中登录,因此特定用户执行创建,然后是所有者记录.我目前正在使用我在AD中创建的CRM用户,但是我需要它是运行流程/应用程序的用户登录的用户.当前,CRM用户在上传时拥有所有记录,无论用户上传哪种记录.请在下面查看我的代码. public ActionResult ImportDataToCRM(CRM_Embrace_IntegrationEntities1 db) { CrmConnection conn = new CrmConnection("CRM"); IOrganizationService service = new OrganizationService(conn); WhoAmIRequest whoReq = new WhoAmIRequest();
4 2024-04-25
编程技术问答社区
XRM where子句中的Nullable过滤器
我在WCF项目中使用XRM(早期绑定)类型,因此我可以访问CRM模型并可以使用LINQ查询.但是我一直在遇到此处描述的问题,这是xrm linq特定的where子句的限制: 其中[子句限制] 该子句的左侧必须是属性名称,右侧 该子句必须是一个值.您无法将左侧设置为常数.两个都 条款的侧面不能是常数. 支持字符串函数包含startswith,endswith和equals. 一个要求不断弹出的要求是当参数为null时,应通过参数返回所有实体.,但我想不出一种方法,而无需破坏要求上面,或编写多个查询以处理该方案时. 这是我的一个查询之一的一个示例,typeFilter == null是我在LHS上使用了常数.在我的真实代码中,有一个守卫条款typeFilter == null指向另一个查询,但我现在必须添加一个开始/结束日期过滤器(均可无效),我无法表达我 not note 为无效的每种组合编写查询. private IQueryable
4 2024-04-25
编程技术问答社区
以程序化方式更新CRM 2011的访问权限
我想知道是否有某种方法可以在CRM 2011中更新访问权限. 假设我有一个名为"营销经理"的访问权限,该营销经理具有用户级别的特权来创建帐户,我想以编程方式将此特权更改为组织级别. 我希望, 预先感谢 解决方案 请查看下面的代码.但是,它实际上将角色特权从现有角色复制到新角色.但是我认为这可以给您一个主意. Guid existingRoleId = new Guid("C85F0FFF-4C80-E211-A877-1CC1DE79B4CA"); Guid newRoleId = new Guid("B6690FFF-4C80-E211-A877-1CC1DE79B4CA"); // Step 2 RetrieveRolePrivilegesRoleRequest getPrivilagesRequest = new RetrieveRolePrivilegesRoleRequest(); getPrivilage
20 2024-04-25
编程技术问答社区
如何用c#在foreach循环中向列表中添加项目
我正在将以下摘要用于某些项目中的某些字符串列表.但这是一个例外. List guids = null; QueryExpression qExp = new QueryExpression { EntityName = "account", ColumnSet = col1, Criteria = new FilterExpression { Conditions = { new ConditionExpression("statecode",ConditionOperator.Equal,0) } } }; sp.CallerId = g1; EntityCollection ec1 = sp.RetrieveMultiple(qExp); foreach (Entity item in ec1.Entities) { guids.Add(Convert.ToS
18 2024-04-25
编程技术问答社区
使用SQL Server应用锁来解决锁的要求
我有一个基于Dynamics CRM 2011的大型应用程序,该应用程序在各个地方都必须根据某些条件查询记录,并在不存在的情况下创建它. 我谈论的事情的一个例子与此相似: stk_balance record = context.stk_balanceSet.FirstOrDefault(x => x.stk_key == id); if(record == null) { record = new stk_balance(); record.Id = Guid.NewGuid(); record.stk_value = 100; context.AddObject(record); } else { record.stk_value += 100; context.UpdateObject(record); } context.SaveChanges(); 在CRM 2011实施方面(尽管与此问题不严格相关)
10 2024-04-25
编程技术问答社区
在Microsoft Dynamics CRM 2013上以编程方式生成邮件合并文档
有什么方法可以通过Microsoft Dynamics CRM 2013来编程生成邮件合并文档? 尝试通过后端的自定义插件生成邮件合并文档. 然后将合并的文档发送到SharePoint. 但是...在CRM SDK中找不到"创建合并文档"功能,任何人都知道这样做的方法吗? 预先感谢! 解决方案 这在邮件合并文档的范围内与开箱即用Dynamics CRM的方式无法完成 - 您需要在客户端上安装MS Word来执行此操作,因此没有API.但是,您仍然可以通过以下一项来满足要求: 编写一个检索报告,将其转换为文档的工作流程,然后将其附加到SharePoint,例如 this 使用第三方附加记录来自mscrm addons的核心包>. 2013年版为您提供了自动生成文档并将其存储在您已预先配置该实体的SharePoint库中的自动工作流活动.注意:模板不是以传统的CRM方式创建的,而是通过使用MS Word插件(这比Dynamics Mail Merge功
8 2024-04-25
编程技术问答社区
获取当前在线登录MS Dynamics CRM 2011的用户Id
是否有一种方法可以检索/识别当前登录到MS Dynamics CRM 2011的用户? 我在这里要完成的工作就像是Facebook登录,除了MS Dynamics.我需要以某种方式检测用户是否已登录到MS Dynamics网站.如果用户已登录到MS Dynamics网站,我将必须获取用户ID并使用Kentico CMS进行身份验证. 我已经尝试与Whoamirequest混在一起,但不幸的是,它需要正确执行的证书. 任何帮助都很好! 解决方案 您可以从上下文中获取用户ID.重新检查此文章. 其他解决方案 您可以通过 获得当前登录的用户ID WhoAmIRequest request = new WhoAmIRequest(); WhoAmIResponse response = (WhoAmIResponse)Service.Execute(request); if (response != null
4 2024-04-24
编程技术问答社区
CRM2011 SDK示例代码中的SystemUser类
我正在使用Microsoft CRM2011示例代码,当我尝试使用Visual Studio 2010进行编译时(我仅使用C-Sharp代码,请不要为我提供VB),我会收到此错误: 错误13找不到类型或名称名称'Systemuser' (您是否缺少使用指令或汇编参考?)SystemUserProvider.cs 我正在直接从SDK 编译文件 ... SystemUser currentUser = serviceProxy.Retrieve(SystemUser.EntityLogicalName, currentUserId, new ColumnSet("domainname")).ToEntity(); ... 与 ... //查询以检索其他用户. QueryExpression QuerySystemuser =新的查询表达 { EntityName = Systemuser.EntityLogicalName, columnSe
10 2024-04-23
编程技术问答社区
CRM中的RetrieveRequest和IOrganizationService.Retrieve有什么区别?
我是C#的CRM Workflow步骤开发.我需要知道RetrieveRequest和IOrganizationService中的Retrieve之间的主要区别是什么. 什么时候必须使用哪个? 是否有任何例子可以显示如何使用此对象以表演者方式运行? 解决方案 在大多数情况下,Retrieve方法就足够了. RetrieveRequest但是,添加了一个有趣的功能:它提供了一个选项,以一次查询与检索对象关联的数据. 想象您需要发票数据以及其发票产品记录.一种选项是创建QueryExpression并加入发票实体和发票轨道实体的结果.这将导致一张潜在的大桌子. 使用RetrieveRequest您可以在一个请求中查询与已检索的实体关联的记录. 一个例子: private readonly IOrganizationService _service; public Entity GetFullInvoice(Guid invoiceId) { v
10 2024-04-23
编程技术问答社区
CRM 2011。Wsdl网络服务不包含我的实体
我们将很快升级到CRM 2011,所以我正在进行一些测试.问题在于,当我将网络服务引用到2011年时,我的应用程序停止编译.它只是找不到任何实体(线路的示例停止工作:Account acc = new Account() - >它说我必须错过参考). 当我将CRM 4的Web服务与CRM 2011之一进行比较时,我认为这是真的. CRM 4的CRMService包含CRM每个实体的定义,但它们不出现在CRM 2011中! 为什么?我想念什么吗?我需要激活某些东西吗? 只是为了确保,这是我正在使用的URL: http://myserver/mscrmservices/2006/crmservicewsdl.aspxdl.aspx - >/p> >不包含实体定义 /a> - >不包含实体定义 实体定义 解决方案 您正在使用错误的端点. Dynamics CRM 2011推出了一项完整的基于WCF的全新Web服务. 它的端点是http:
8 2024-04-23
编程技术问答社区
在 "活动指针 "CRM 2011中不允许使用创建/更新方法
有一个插件,可以将导致活动的活动转移到有资格的机会上.我已经在机会"创建"上注册了插件,以下是代码 public void Execute(IServiceProvider serviceProvider) { IPluginExecutionContext context = (IPluginExecutionContext)serviceProvider.GetService(typeof(IPluginExecutionContext)); Entity entity; if (context.InputParameters.Contains("Target") && context.InputParameters["Target"] is Entity) { entity = (Entity)context.InputParameters["Target"];
4 2024-04-23
编程技术问答社区
错误设置断点,但在调试时只在某些行设置断点
此行导致PostEntityImages集合中的"未找到". Entity pimage = _context.PostEntityImages["postcreate"]; 当我在那条线上放一个断点并将其放在手表窗口中时,它可以正常工作,而键是, 更新: protected override void ExecutePlugin() { try { Entity pimage = null; if (_context.PostEntityImages.ContainsKey("postcreate")) pimage = _context.PostEntityImages["postcreate"]; } catch (Exception) { // Never hits this line throw; } } // When stepping in/over the line assigning pimage,
12 2024-04-23
编程技术问答社区
如果凭证有误,我可以禁用MS CRM 2011 SDK的登录提示吗?
现在,我访问 crm sdk 如下 IServiceManagement serviceManagement = ServiceConfigurationFactory.CreateManagement(discoveryUri); ClientCredentials credentials = new ClientCredentials(); credentials.Windows.ClientCredential = new System.Net.NetworkCredential(userName, password, domain); using (DiscoveryServiceProxy serviceProxy = new DiscoveryServiceProxy(new DiscoveryServiceProxy(serviceManagem
8 2024-04-23
编程技术问答社区
使用PartyList的QueryExpression中的错误
我正在尝试检索其"必需品"中包含的约会,其中一个从帐户列表中包含的实体.必需的人有一种聚会清单. 我的查询看起来像: var query = new QueryExpression("appointment") { ColumnSet = columnSet, Criteria = new FilterExpression(LogicalOperator.Or) }; 和添加条件: GetAccounts() .Select(a => new ConditionExpression("requiredattendees", ConditionOperator.Contains, a.Id)) .ForEach(c => query.Criteria.AddCondition(c)); a.Id is the account guid. 我正在遵循以下错误: Cannot add attribute requiredattendees
16 2024-04-23
编程技术问答社区
从CRM 2011中检索一个实体列表,每个实体都有其所有相关的实体。
我在CRM 2011中有两个实体-EmailMatchingrule和EmailMatchingrulefield,在标准的亲子关系中.我要检索的是所有规则的集合,每个规则都有其所有字段作为相关实体预先提及的. 这甚至可能吗?我可以使用查询表达addLinkentity功能获得一个扁平的列表,但这并不是我真正追求的. 使用早期绑定的实体和LINQ,我只能弄清楚如何获取每个列表,但没有相关项目. 有什么想法吗? tia 解决方案 您的LINQ语句需要使用" include". from rule in EmailMatchingRule.Include("EmailMatchingRuleField") select rule 您将获得的规则集合将拥有所有匹配规则,现在已经急切地加载了.
16 2024-04-23
编程技术问答社区