
Explanation
A. Answer is: Virtual Entity
You cannot change the Entity primaryid field to some other field. CRM using GUID as the Primary key for each record.
If you definitely want to make some other field as Primary key, you could consider using Alternate Keys.
Source:
https://docs.microsoft.com/en-us/dynamics365/customerengagement/on-premises/developer/define-alternate-key The caveat being that Alternate Keys can be created for Virtual Entity
B. Answer is: Custom Connector
All virtual entitites are read-only.
Source:
https://docs.microsoft.com/en-us/dynamics365/customerengagement/on-premises/customize/create-edit-virtual-e
C. Answer is: Virtual Entity
Rows based on virtual tables are available in all clients including custom clients developed using the Dataverse web services.
Source: https://docs.microsoft.com/en-us/powerapps/maker/data-platform/create-edit-virtual-entities