Microsoft CRM 2011 中 PreImage 的早期绑定

发布于 2024-12-10 18:27:39 字数 504 浏览 0 评论 0原文

Microsoft CRM 高级开发人员扩展对 CRM Web 服务调用的早期绑定让我有点被宠坏了。

我现在正在编写一个插件,我想访问原像中定义的属性。所有示例都将原像投射为 Microsoft.Xrm.Sdk.Entity,它使用后期绑定来访问其属性。我不喜欢将属性名称的所有这些字符串硬编码到我的插件中,并且希望找到一种通过使用早期绑定来避免它的方法。

这是一个强制转换的示例

var preMessageImage = (Microsoft.Xrm.Sdk.Entity)context.PreEntityImages["MyPreImage"]; 

但我必须使用后期绑定来访问属性

var myProperty = preMessageImate.Properties["MyProperty"];

有没有办法将此原像强制转换为 xrm 对象,该对象具有使用早期绑定定义的所有属性,因此我不必对所有属性进行硬编码名字?

The Microsoft CRM advanced developer extensions have gotten me a little spoiled with their early binding for calls made to CRM's webservices.

I'm writing a plugin right now and I'd like to access attributes defined in the pre-image. All the examples cast the preimage as Microsoft.Xrm.Sdk.Entity which uses late binding to access it's attributes. I dislike hardcoding all those string's for attribute names into my plugin and would like to find a method that avoids it by using early binding.

Here is an example of a cast

var preMessageImage = (Microsoft.Xrm.Sdk.Entity)context.PreEntityImages["MyPreImage"]; 

But I have to use late binding to access the properties

var myProperty = preMessageImate.Properties["MyProperty"];

Is there any way to cast this preimage to an xrm object that has all the properties defined using early binding so I don't have to hardcode all the property names?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

绳情 2024-12-17 18:27:39

您应该首先使用 SDK 中的 crmsvcutil 工具生成“早期绑定”Xrm 实体,并将该代码文件包含在您的插件代码库中。

我建议省略“DataContextName”命令行参数,这样就不会生成上下文。

有关详细信息,请在 MSDN 上查看:MSDN 上的 CrmSvcUtil

接下来,您应该使用 Entity 类的 ToEntity 方法来获取强类型的特定实体。更多信息请参见:MSDN 上的 ToEntity

You should first use the crmsvcutil tool in the SDK to generate "early-bound" Xrm entities and include that code file in your plugin codebase.

I suggest omitting the 'DataContextName' command-line arg so not context is generated.

For more information check here on MSDN: CrmSvcUtil on MSDN

Next, you should use the ToEntity<T> method on the Entity class to get a strongly-typed specific entity. More info here: ToEntity on MSDN

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文