Sedodream Relase: MSBuild Linq Tasks
I’ve created a new release of MSBuild tasks, at www.codeplex.com/sedodream. This release includes 4 .NET 3.5 tasks built on Visual Studio B2. Those are all Linq MSBuild tasks. They are:
Name |
Description |
CreateLinqCode |
Creates a Linq code file from a database. |
CreateLinqDbml |
Creates a Linq DBML file from a database. |
CreateLinqMap |
Creates a Linq Map file from a database. |
CreateDatabase |
Creates a database from an Linq DataContext which is contained in an assembly. |
The first three tasks simply wrap the SqlMetal command line utility. The last, CreateDatabse, will create a database from a Linq DataContext that is contained in an assembly. Right now there is little validation of the parameters passed, but I plan on adding additional validation. Also I will add more meaningful error messages, when invalid parameters are passed through.
Below you’ll find an example of the CreateLinqCode task.
<?xml version="1.0" encoding="utf-8"?>
<Project ToolsVersion="3.5" DefaultTargets="Create" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<Import Project="$(MSBuildExtensionsPath)\Sedodream\Sedodream35.tasks"/>
<Target Name="Create">
<!-- sqlmetal /pluralize
/conn:"data source=(local);initial catalog=ibrtest;integrated security=SSPI;packet size=4096"
/timeout:15
/language:C#
/context:IbrTestDataContext
/code:ibrtest.cs
/views
/functions
/sprocs
/serialization:Unidirectional
/namespace:Sedodream.Linq.Test
-->
<CreateLinqCode
CodeFileName="ibrahimTest.cs"
ConnectionString="data source=(local);initial catalog=ibrtest;integrated security=SSPI;packet size=4096"
Timeout="15"
Language="C#"
ContextClassName="IbrTestDataContext"
IncludeViews="true"
IncludeSprocs="true"
IncludeFunctions="true"
TargetNamespace="Sedodream.Linq.Test"
>
</CreateLinqCode>
</Target>
</Project>
Here is the CreateLinqDbml task usage.
<?xml version="1.0" encoding="utf-8"?>
<Project ToolsVersion="3.5" DefaultTargets="Create" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<Import Project="$(MSBuildExtensionsPath)\Sedodream\Sedodream35.tasks"/>
<Target Name="Create">
<!-- sqlmetal /pluralize
/conn:"data source=(local);initial catalog=ibrtest;integrated security=SSPI;packet size=4096"
/timeout:15
/language:C#
/context:IbrTestDataContext
/dbml:../LinqObjects\ibrtest.dbml
/views
/functions
/sprocs
/serialization:Unidirectional
/namespace:Sedodream.Linq.Test
-->
<CreateLinqDbml
DbmlFileName="ibrahimTest.dbml"
OutDir="."
ConnectionString="data source=(local);initial catalog=ibrtest;integrated security=SSPI;packet size=4096"
Timeout="15"
Language="C#"
ContextClassName="IbrTestDataContext"
IncludeViews="true"
IncludeSprocs="true"
IncludeFunctions="true"
TargetNamespace="Sedodream.Linq.Test"
>
</CreateLinqDbml>
</Target>
</Project>
Please let me know if you have any questions/comments about these items.
Sayed Ibrahim Hashimi
