Quantcast
Channel: CRM Development forum
Viewing all articles
Browse latest Browse all 8223

Upgrading custom workflow code for CRM 2011

$
0
0

I am trying to upgrade C# code for a custom workflow activity from CRM 4 to CRM 2011.

The following line is causing me some trouble, as I don't know how to upgrade it properly.

Original code is:

      public Lookup accountId
        {
            get
            {
                return (Lookup)base.GetValue(accountIdProperty);
            }
            set
            {
                base.SetValue(accountIdProperty, value);
            }
        }

The lookup was originally accessed as follows:

      Guid accountId = MatchSenderWithExistingAccount(crmService, this.sender);
            this.accountId = new Lookup("contact", accountId);

So I've updated the lookup part to this:

 [Output("AccountId")]
        [ReferenceTarget("contact ")]
        [Default("00000000-0000-0000-0000-000000000000")]
        public OutArgument<EntityReference> AccountId { get; set; }

And am trying to update the second line like this:

  Guid accountId = MatchSenderWithExistingAccount(service, SenderId.ToString());                 
                  this.AccountId.Set(executionContext, new EntityReference("contact", accountId));

But this isn't working. It builds, but when I try to register the dll I get the following error:

Unhandled Exception: System.ServiceModel.FaultException`1[[Microsoft.Xrm.Sdk.OrganizationServiceFault, Microsoft.Xrm.Sdk, Version=5.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35]]: Invalid default value: There is no entity name specified with property: AccountId of type EntityReference
Detail: <OrganizationServiceFault xmlns="http://schemas.microsoft.com/xrm/2011/Contracts" xmlns:i="http://www.w3.org/2001/XMLSchema-instance"><ErrorCode>-2147200995</ErrorCode><ErrorDetails xmlns:a="http://schemas.datacontract.org/2004/07/System.Collections.Generic" /><Message>Invalid default value: There is no entity name specified with property: AccountId of type EntityReference</Message><Timestamp>2014-03-03T13:35:50.9340181Z</Timestamp><InnerFault><ErrorCode>-2147200995</ErrorCode><ErrorDetails xmlns:a="http://schemas.datacontract.org/2004/07/System.Collections.Generic" /><Message>Invalid default value: There is no entity name specified with property: AccountId of type EntityReference</Message><Timestamp>2014-03-03T13:35:50.9340181Z</Timestamp><InnerFault i:nil="true" /><TraceText i:nil="true" /></InnerFault><TraceText i:nil="true" /></OrganizationServiceFault>

Server stack trace: 
   at System.ServiceModel.Channels.ServiceChannel.HandleReply(ProxyOperationRuntime operation, ProxyRpc& rpc)
   at System.ServiceModel.Channels.ServiceChannel.Call(String action, Boolean oneway, ProxyOperationRuntime operation, Object[] ins, Object[] outs, TimeSpan timeout)
   at System.ServiceModel.Channels.ServiceChannelProxy.InvokeService(IMethodCallMessage methodCall, ProxyOperationRuntime operation)
   at System.ServiceModel.Channels.ServiceChannelProxy.Invoke(IMessage message)

Exception rethrown at [0]: 
   at System.Runtime.Remoting.Proxies.RealProxy.HandleReturnMessage(IMessage reqMsg, IMessage retMsg)
   at System.Runtime.Remoting.Proxies.RealProxy.PrivateInvoke(MessageData& msgData, Int32 type)
   at Microsoft.Xrm.Sdk.IOrganizationService.Create(Entity entity)
   at Microsoft.Xrm.Sdk.Client.OrganizationServiceProxy.CreateCore(Entity entity)
   at Microsoft.Crm.Tools.PluginRegistration.RegistrationHelper.RegisterPlugin(CrmOrganization org, CrmPlugin plugin)
   at Microsoft.Crm.Tools.PluginRegistration.PluginRegistrationForm.btnRegister_Click(Object sender, EventArgs e)

So I know that the upgraded version of the property is written wrongly as it says in the error message that there is no entity with that value. But I don't know how else to upgrade that specific piece of code. The way I've done it, I just found online - it's completely new to me, so I have no idea myself!

Thanks.



Viewing all articles
Browse latest Browse all 8223

Trending Articles



<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>