من همیشه برای پروژه هام از این روش استفاده می کنم.
Schema ی دیتابیس رو مثلاً بدین شکل در فایل XML ذخیره کن:

<?xml version="1.0" encoding="utf-8" ?>
<TvtoDBSchema>
<Entities>
<Member name="tblMember">
<UserId>UserId</UserId>
<UserName>UserName</UserName>
<Pass>Pass</Pass>
<Email>Email</Email>
<InsertDate>InsertDate</InsertDate>
<UpdateDate>UpdateDate</UpdateDate>
</Member>
</Entities>
<SProc>
<GetMembers>GetMembers</GetMembers>
<InsertRole>InsertRole</InsertRole>
<InsertUser>InsertUser</InsertUser>
<UpdateUser>UpdateUser</UpdateUser>
</SProc>
</TvtoDBSchema>

وقتی که فایل با محتویات فوق در VS باز و انتخاب هست، از منوی XML گزینه ی Create Schema رو انتخاب کن. در این حالت، فایل XSD متناظر با فایل XML به طور خودکار تولید و نمایش داده میشه. اون رو ذخیره کن. حال فایل XSD رو به ابزار xsd که در SDK دات نت وجود داره به شکل ذیل پاس بده:

C:\XSD.exe myFile.xsd /c

یک فایل cs تحویل میگیری که حالت میانه ی شی گونه ی فایل XML هست که باید با XML Deserialization به شکل ذیل اون رو نهایی کنی:

public static TvtoDBSchema GetFieldNames(string schemaFilePath)
{
XmlSerializer xs = new XmlSerializer(typeof(TvtoDBSchema));
using (XmlReader xr = XmlReader.Create(schemaFilePath))
{
return (TvtoDBSchema)xs.Deserialize(xr);
}
}

حال به شکل ذیل به نام فیلد می تونی دسترسی داشته باشی:

MyClass.GetFieldNames("myFile.xml").SProc.GetMembe rs;

جالب بود. نه؟ ;)

موفق باشید.

پ.ن:
1) نحوه ی نگهداری Schema ی دیتابیس بستگی به نیازت و نوع پروژت داره. ممکنه نیاز باشه JOIN ها رو هم ذخیره کنی. این بستگی به خودت داره.
2) می تونی متد GetFieldNames رو private کنی و یک متد public با نام GetFieldName ایجاد کنی که GetFieldNames رو فراخوانی می کنه تا نیاز نباشه مدام مسیر فایل XML رو بنویسی.

موفق باشید.