कई कारणों से जिनके बारे में मुझे बात करने की स्वतंत्रता नहीं है, हम अपने Sql Server 2005 डेटाबेस पर एक दृश्य को परिभाषित कर रहे हैं जैसे:
CREATE VIEW [dbo].[MeterProvingStatisticsPoint]
AS
SELECT
CAST(0 AS BIGINT) AS 'RowNumber',
CAST(0 AS BIGINT) AS 'ProverTicketId',
CAST(0 AS INT) AS 'ReportNumber',
GETDATE() AS 'CompletedDateTime',
CAST(1.1 AS float) AS 'MeterFactor',
CAST(1.1 AS float) AS 'Density',
CAST(1.1 AS float) AS 'FlowRate',
CAST(1.1 AS float) AS 'Average',
CAST(1.1 AS float) AS 'StandardDeviation',
CAST(1.1 AS float) AS 'MeanPlus2XStandardDeviation',
CAST(1.1 AS float) AS 'MeanMinus2XStandardDeviation'
WHERE 0 = 1
विचार यह है कि एंटिटी फ्रेमवर्क इस क्वेरी के आधार पर एक इकाई बनाएगा, जो यह करता है, लेकिन यह इसे एक त्रुटि के साथ उत्पन्न करता है जो निम्नलिखित बताता है:
चेतावनी 6002: तालिका / दृश्य 'Keystone_Local.dbo.MeterProvingStatisticsPoint' में प्राथमिक कुंजी परिभाषित नहीं है। कुंजी का अनुमान लगाया गया है और परिभाषा को केवल-पढ़ने के लिए तालिका / दृश्य के रूप में बनाया गया था।
और यह तय करता है कि कंप्लीटडडेट टाइम फील्ड इस इकाई की प्राथमिक कुंजी होगी।
हम मॉडल उत्पन्न करने के लिए EdmGen का उपयोग कर रहे हैं। क्या एक ऐसा तरीका है जो इकाई ढांचे में प्राथमिक कुंजी के रूप में इस दृश्य के किसी भी क्षेत्र को शामिल नहीं करता है?