Instrukcje: Generowanie modelu obiektu jako zewnętrznego pliku
Alternatywą dla mapowania opartego na atrybutach jest generowanie modelu obiektów jako zewnętrznego pliku XML przy użyciu narzędzia wiersza polecenia SQLMetal. Aby uzyskać więcej informacji, zobacz SqlMetal.exe (Narzędzie generowania kodu). Korzystając z zewnętrznego pliku mapowania XML, zmniejszasz bałagan w kodzie. Zachowanie można również zmienić, modyfikując plik zewnętrzny bez ponownej kompilacji plików binarnych aplikacji. Aby uzyskać więcej informacji, zobacz Mapowanie zewnętrzne.
Uwaga
Projektant relacyjne obiektu nie obsługuje generowania pliku mapowania zewnętrznego.
Przykład 1
Następujące polecenie generuje zewnętrzny plik mapowania z przykładowej bazy danych Northwind.
sqlmetal /server:myserver /database:northwind /map:externalfile.xml
Przykład 2
Poniższy fragment pliku mapowania zewnętrznego przedstawia mapowanie tabeli Customers w przykładowej bazie danych Northwind. Ten fragment został wygenerowany przez wykonanie programu SQLMetal z opcją /map .
<?xml version="1.0" encoding="utf-8"?>
<Database xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" Name="northwnd">
<Table Name="Customers">
<Type Name=".Customer">
<Column Name="CustomerID" Member="CustomerID" Storage="_CustomerID" DbType="NChar(5) NOT NULL" CanBeNull="False" IsPrimaryKey="True" />
<Column Name="CompanyName" Member="CompanyName" Storage="_CompanyName" DbType="NVarChar(40) NOT NULL" CanBeNull="False" />
<Column Name="ContactName" Member="ContactName" Storage="_ContactName" DbType="NVarChar(30)" />
<Column Name="ContactTitle" Member="ContactTitle" Storage="_ContactTitle" DbType="NVarChar(30)" />
<Column Name="Address" Member="Address" Storage="_Address" DbType="NVarChar(60)" />
<Column Name="City" Member="City" Storage="_City" DbType="NVarChar(15)" />
<Column Name="Region" Member="Region" Storage="_Region" DbType="NVarChar(15)" />
<Column Name="PostalCode" Member="PostalCode" Storage="_PostalCode" DbType="NVarChar(10)" />
<Column Name="Country" Member="Country" Storage="_Country" DbType="NVarChar(15)" />
<Column Name="Phone" Member="Phone" Storage="_Phone" DbType="NVarChar(24)" />
<Column Name="Fax" Member="Fax" Storage="_Fax" DbType="NVarChar(24)" />
<Association Name="FK_CustomerCustomerDemo_Customers" Member="CustomerCustomerDemos" Storage="_CustomerCustomerDemos" ThisKey="CustomerID" OtherTable="CustomerCustomerDemo" OtherKey="CustomerID" DeleteRule="NO ACTION" />
<Association Name="FK_Orders_Customers" Member="Orders" Storage="_Orders" ThisKey="CustomerID" OtherTable="Orders" OtherKey="CustomerID" DeleteRule="NO ACTION" />
</Type>
</Table>
</Database>