+ Add post
Hi,
I use EntitySchemaQuery to get Entity, but I can't get primary key value of result entity. The exception said: not found "Id" (something likes this)
EntitySchemaQuery esqDetails = new EntitySchemaQuery(UserConnection.EntitySchemaManager, "UsrExportDetails"); esqDetails.AddColumn("Id"); esqDetails.AddColumn("UsrCodeLevel1"); esqDetails.Filters.Add(esqDetails.CreateFilterWithParameters(FilterComparisonType.Equal, "UsrExport", id)); var exportDetails = esqDetails.GetEntityCollection(UserConnection); foreach (var details in exportDetails) { var refId = details.GetTypedColumnValue("Id"); var qrCodeRefId = details.GetTypedColumnValue("UsrCodeLevel1Id"); this.Push(refId, qrCodeRefId, name, address, tel, fax); }
Like
Hi Toan Mai,
Try to name your Id column:
var idColumnName = esq.AddColumn("Id").Name;
then you can get in your foreach loop:
entity.GetTypedColumnValue<Guid>(idColumnName);
At least it worked for me.
Got the same thing yesterday :
Replace :
esqDetails.AddColumn("Id");
by
esqDetails.PrimaryQueryColumn.IsAlwaysSelect = true;
And you can use the following to get the Id column :
var recordId = details.PrimaryColumnValue;