我正在尝试访问一行的父级,但它总是返回 null。
我有两张桌子,一张描述一个车站,另一张告诉车站是否彼此“接近”。
CREATE TABLE [dbo].[GlobalStations] (
[GlobalStationId] [int] IDENTITY(1,1) NOT FOR REPLICATION NOT NULL,
....
)
CREATE TABLE [dbo].[NearStations] (
[OriginalStationId] [int] NOT NULL,
[ToleratedStationId] [int] NOT NULL,
...
)
在 SQL Server 上设置约束以确保数据一致。
ALTER TABLE [dbo].[NearStations] WITH CHECK ADD CONSTRAINT [FK_NearStations_Original] FOREIGN KEY([OriginalStationId])
REFERENCES [dbo].[GlobalStations] ([GlobalStationId])
ALTER TABLE [dbo].[NearStations] WITH CHECK ADD CONSTRAINT [FK_NearStations_Tolerated] FOREIGN KEY([ToleratedStationId])
REFERENCES [dbo].[GlobalStations] ([GlobalStationId])
如果是数据集,我已经添加了这两个表,现在当我有一个 NearStation 行时,我正在尝试访问 GlobalStation。
var nearStationsTA = new NearStationsTableAdapter()
var stations = nearStationsTA.GetData();
var st = stations[0];
var tid = st.ToleratedStationId;
var global = st.GlobalStationsRowByFK_NearStations_Tolerated; // Always NULL
我希望生成的代码能够进行某种延迟加载,但显然它没有这样做。
如何强制代码自行加载?我是否可以强制数据集加载我使用的所有 GlobalStation)以便在需要时拥有该行?
谢谢