哎,挺好的方法,可惜msdn上没有详细的参数表,只能自己写了。。。
CollectionName |
MetaDataCollections |
DataSourceInformation |
DataTypes |
Restrictions |
ReservedWords |
Users |
Databases |
Tables |
Columns |
StructuredTypeMembers |
Views |
ViewColumns |
ProcedureParameters |
Procedures |
ForeignKeys |
IndexColumns |
Indexes |
UserDefinedTypes |
Code
private DataTable GetSqlDatabaseSchema(string strConn, string collectionName,string[] strs)
{
SqlConnection connection = new SqlConnection(strConn);
DataTable schema = new DataTable();
try
{
connection.Open();
if (!string.IsNullOrEmpty(collectionName))
{
if (strs != null&&strs.Length >0)
{
schema = connection.GetSchema(collectionName, strs);
}
else
schema = connection.GetSchema(collectionName);
}
else
schema = connection.GetSchema();
}
catch
{
schema = null;
}
finally
{
connection.Close();
}
return schema;
}