I have scenario in database
CREATE TABLE #MyVersions
(
MyVersion VARCHAR(100) NULL
)
DELETE FROM #MyVersions
INSERT INTO #MyVersions
(MyVersion)
VALUES
(NULL),
(''),
('10001'),
('10001_2'),
('10001_3'),
('10001_4'),
('10001_6'),
('10001_9'),
('10001_11'),
('10001_5'),
('10001_7'),
('10001_8'),
('10001_10'),
('10001_12')
SELECT MyVersion
FROM #MyVersions
Order by CASE MyVersion
WHEN NULL THEN MyVersion
ELSE CAST(SUBSTRING(MyVersion,
charindex('_', MyVersion) + 1,
LEN(MyVersion)-charindex('_', MyVersion)) AS INT)
END
I want to convert above select statement to Entity Framework LINQ method expression.
Actually I want to sort table by integer part which comes after '_'
Any one can help? thanks