ForeignKeyData Class
The ForeignKeyData class is the concrete implementation of IForeignKeyData
in the PocoDataSet.Data assembly. It represents foreign key metadata for a relationship
between a parent table/column and a referenced table/column.
ForeignKeyData is a lightweight metadata object (a simple data carrier). It contains no
validation or discovery logic; it only stores the names that describe the foreign key.
Namespace: PocoDataSet.Data
Assembly: PocoDataSet.Data.dll
public class ForeignKeyData : IForeignKeyData
{
public string ForeignKeyName { get; set; }
public string PrincipalColumnName { get; set; }
public string PrincipalTableName { get; set; }
public string ReferencedColumnName { get; set; }
public string ReferencedTableName { get; set; }
}
ForeignKeyName – foreign key constraint name.PrincipalColumnName – name of the column that holds the foreign key value.PrincipalTableName – name of the table that contains the foreign key column.ReferencedColumnName – name of the column that holds the primary key value.ReferencedTableName – table that contains the primary key column.ColumnMetadata (or stored in a metadata table) so dynamic UI
generation can treat foreign-key columns as lookups.
string.Empty. Consumers typically populate them from
schema discovery code or metadata sources.
// Example: create and populate foreign key metadata
IForeignKeyData foreignKeyData = new ForeignKeyData();
foreignKeyData.ForeignKeyName = "FK_Employee_Department";
foreignKeyData.PrincipalTableName = "Employee";
foreignKeyData.PrincipalColumnName = "DepartmentId";
foreignKeyData.ReferencedTableName = "Department";
foreignKeyData.ReferencedColumnName = "Id";
Table of Content POCO DataSet POCO DataSet Types
Business Process Programming in .Net
© 2004–2026 Laskarzhevsky Software Inc.
Unless otherwise noted, the content of this website is licensed under the
Creative Commons Attribution 4.0 International License (CC BY 4.0).
Code examples are provided under the MIT License.
You are free to share and adapt the material provided that appropriate
credit is given and any modifications are clearly indicated.
The information provided on this website is for educational purposes only.
The author and publisher make no warranties regarding the completeness
or suitability of the information and are not responsible for any damages
resulting from its use.