Thanks to the Sitecore Support team for helping.
In case someone else also gets into this issue:
xConnect has the following configuration:
The Xdb.Collection.ShardMapManager database defines the shards settings for each shard map in the __ShardManagement.ShardsGlobal table.
You will need to update the ServerName field in each record with the name of the SQL Server where you migrated your Xdb collection shards databases.
If you also renamed the databases, you will need to update the ...
from your code getContact != null, if this condition is false, then you are creating new contact which is incorrect.
Contact contact = new Sitecore.XConnect.Contact(new ContactIdentifier(phoneAsChannel, contactus.email, ContactIdentifierType.Known));
Sitecore has already created an anonymous contact and set it in the device cookie ...
I ended up figuring out a solution.
What I did was to add a custom token to the first message that goes to the original email. That custom token was something like "forcedEmailAddress", which had a value of the original email address.
Then I used a pipeline to intercept FillEmail (which I was already doing for another purpose - allowing HTML in my ...
Problem is that you are not storing old email and email is getting updated by new email.
You can follow the below steps:
Create custom facet for old email which you can follow from here
So before updating email from a new email, you need to update old email facet first.
Then you can update email which is available in Email facets.
4. Now you have two ...