├── .gitignore
├── .gitmodules
├── Build
├── Build.cmd
├── Build.proj
└── BuildAndPackage.cmd
├── Common
├── AssemblyVersion.cs
└── CommonAssemblyInfo.cs
├── Packages
├── Castle.Core.3.2.2
│ ├── ASL - Apache Software Foundation License.txt
│ ├── BreakingChanges.txt
│ ├── Castle.Core.3.2.2.nupkg
│ ├── Castle.Core.3.2.2.nuspec
│ ├── Changes.txt
│ ├── License.txt
│ ├── lib
│ │ ├── net35
│ │ │ ├── Castle.Core.dll
│ │ │ └── Castle.Core.xml
│ │ ├── net40-client
│ │ │ ├── Castle.Core.dll
│ │ │ └── Castle.Core.xml
│ │ ├── net45
│ │ │ ├── Castle.Core.dll
│ │ │ └── Castle.Core.xml
│ │ ├── sl4
│ │ │ ├── Castle.Core.dll
│ │ │ └── Castle.Core.xml
│ │ └── sl5
│ │ │ ├── Castle.Core.dll
│ │ │ └── Castle.Core.xml
│ └── readme.txt
├── Castle.Windsor.3.2.1
│ ├── ASL - Apache Software Foundation License.txt
│ ├── BreakingChanges.txt
│ ├── Castle.Windsor.3.2.1.nupkg
│ ├── Castle.Windsor.3.2.1.nuspec
│ ├── Changes.txt
│ ├── License.txt
│ ├── lib
│ │ ├── net35
│ │ │ ├── Castle.Windsor.dll
│ │ │ └── Castle.Windsor.xml
│ │ ├── net40-client
│ │ │ ├── Castle.Windsor.dll
│ │ │ └── Castle.Windsor.xml
│ │ ├── net40
│ │ │ ├── Castle.Windsor.dll
│ │ │ └── Castle.Windsor.xml
│ │ ├── net45
│ │ │ ├── Castle.Windsor.dll
│ │ │ └── Castle.Windsor.xml
│ │ ├── sl4
│ │ │ ├── Castle.Windsor.dll
│ │ │ └── Castle.Windsor.xml
│ │ └── sl5
│ │ │ ├── Castle.Windsor.dll
│ │ │ └── Castle.Windsor.xml
│ └── readme.txt
├── CommonServiceLocator.1.0
│ ├── CommonServiceLocator.1.0.nupkg
│ └── lib
│ │ ├── NET35
│ │ ├── Microsoft.Practices.ServiceLocation.XML
│ │ ├── Microsoft.Practices.ServiceLocation.dll
│ │ └── Microsoft.Practices.ServiceLocation.pdb
│ │ └── SL30
│ │ ├── Microsoft.Practices.ServiceLocation.XML
│ │ └── Microsoft.Practices.ServiceLocation.dll
├── CommonServiceLocator.WindsorAdapter.1.0
│ ├── CommonServiceLocator.WindsorAdapter.1.0.nupkg
│ └── lib
│ │ └── NET35
│ │ ├── CommonServiceLocator.WindsorAdapter.dll
│ │ └── CommonServiceLocator.WindsorAdapter.pdb
├── FluentNHibernate.1.4.0.0
│ ├── FluentNHibernate.1.4.0.0.nupkg
│ ├── FluentNHibernate.1.4.0.0.nuspec
│ └── lib
│ │ └── net35
│ │ ├── FluentNHibernate.XML
│ │ └── FluentNHibernate.dll
├── Iesi.Collections.3.3.3.4001
│ ├── Iesi.Collections.3.3.3.4001.nupkg
│ ├── Iesi.Collections.3.3.3.4001.nuspec
│ └── lib
│ │ └── Net35
│ │ ├── Iesi.Collections.dll
│ │ └── Iesi.Collections.xml
├── Mvc3Futures.3.0.20105.0
│ ├── Mvc3Futures.3.0.20105.0.nupkg
│ └── lib
│ │ └── Microsoft.Web.Mvc.dll
├── MvcContrib.Mvc3-ci.3.0.100.0
│ ├── MvcContrib.Mvc3-ci.3.0.100.0.nupkg
│ ├── MvcContrib.Mvc3-ci.3.0.100.0.nuspec
│ └── lib
│ │ └── MvcContrib.dll
├── MvcContrib.Mvc3.FluentHtml-ci.3.0.100.0
│ ├── MvcContrib.Mvc3.FluentHtml-ci.3.0.100.0.nupkg
│ ├── MvcContrib.Mvc3.FluentHtml-ci.3.0.100.0.nuspec
│ └── lib
│ │ └── MvcContrib.FluentHtml.dll
├── NHibernate.3.3.3.4001
│ ├── ConfigurationTemplates
│ │ ├── FireBird.cfg.xml
│ │ ├── MSSQL.cfg.xml
│ │ ├── MySql.cfg.xml
│ │ ├── Oracle.cfg.xml
│ │ ├── PostgreSQL.cfg.xml
│ │ ├── SQLite.cfg.xml
│ │ ├── SybaseASE.cfg.xml
│ │ └── SybaseSQLAnywhere.cfg.xml
│ ├── NHibernate.3.3.3.4001.nupkg
│ ├── NHibernate.3.3.3.4001.nuspec
│ ├── NHibernate.license.txt
│ ├── NHibernate.readme.html
│ ├── NHibernate.releasenotes.txt
│ ├── lib
│ │ └── Net35
│ │ │ ├── NHibernate.dll
│ │ │ └── NHibernate.xml
│ ├── nhibernate-configuration.xsd
│ └── nhibernate-mapping.xsd
├── Newtonsoft.Json.5.0.8
│ ├── Newtonsoft.Json.5.0.8.nupkg
│ ├── Newtonsoft.Json.5.0.8.nuspec
│ ├── lib
│ │ ├── net20
│ │ │ ├── Newtonsoft.Json.dll
│ │ │ └── Newtonsoft.Json.xml
│ │ ├── net35
│ │ │ ├── Newtonsoft.Json.dll
│ │ │ └── Newtonsoft.Json.xml
│ │ ├── net40
│ │ │ ├── Newtonsoft.Json.dll
│ │ │ └── Newtonsoft.Json.xml
│ │ ├── net45
│ │ │ ├── Newtonsoft.Json.dll
│ │ │ └── Newtonsoft.Json.xml
│ │ ├── netcore45
│ │ │ ├── Newtonsoft.Json.dll
│ │ │ └── Newtonsoft.Json.xml
│ │ ├── portable-net40+sl4+wp7+win8
│ │ │ ├── Newtonsoft.Json.dll
│ │ │ └── Newtonsoft.Json.xml
│ │ └── portable-net45+wp80+win8
│ │ │ ├── Newtonsoft.Json.dll
│ │ │ └── Newtonsoft.Json.xml
│ └── tools
│ │ └── install.ps1
├── RhinoMocks.3.6.1
│ ├── RhinoMocks.3.6.1.nupkg
│ ├── RhinoMocks.3.6.1.nuspec
│ └── lib
│ │ └── net
│ │ ├── Rhino.Mocks.dll
│ │ └── Rhino.Mocks.xml
├── SharpArch.Domain.2.0.0.0
│ └── lib
│ │ └── NET40
│ │ ├── SharpArch.Domain.dll
│ │ └── SharpArch.Domain.pdb
├── SharpArch.Domain.2.1.2
│ ├── SharpArch.Domain.2.1.2.nupkg
│ ├── SharpArch.Domain.2.1.2.nuspec
│ └── lib
│ │ └── NET40
│ │ ├── SharpArch.Domain.dll
│ │ └── SharpArch.Domain.pdb
├── SharpArch.NHibernate.2.0.0.0
│ └── lib
│ │ └── NET40
│ │ ├── SharpArch.NHibernate.dll
│ │ └── SharpArch.NHibernate.pdb
├── SharpArch.NHibernate.2.1.2
│ ├── SharpArch.NHibernate.2.1.2.nupkg
│ ├── SharpArch.NHibernate.2.1.2.nuspec
│ └── lib
│ │ └── NET40
│ │ ├── SharpArch.NHibernate.dll
│ │ └── SharpArch.NHibernate.pdb
├── SharpArch.Web.Mvc.Castle.2.1.2
│ ├── SharpArch.Web.Mvc.Castle.2.1.2.nupkg
│ ├── SharpArch.Web.Mvc.Castle.2.1.2.nuspec
│ └── lib
│ │ └── NET40
│ │ ├── SharpArch.Web.Mvc.dll
│ │ └── SharpArch.Web.Mvc.pdb
├── inflector_extension.0.0.8
│ ├── inflector_extension.0.0.8.nupkg
│ ├── inflector_extension.0.0.8.nuspec
│ └── lib
│ │ ├── Net35
│ │ └── inflector_extension.dll
│ │ └── Net40
│ │ └── inflector_extension.dll
├── jQuery.1.6.1
│ └── Content
│ │ └── Scripts
│ │ ├── jquery-1.6.1-vsdoc.js
│ │ ├── jquery-1.6.1.js
│ │ └── jquery-1.6.1.min.js
├── log4net.1.2.10
│ ├── lib
│ │ ├── 1.0
│ │ │ ├── log4net.dll
│ │ │ └── log4net.xml
│ │ ├── 1.1
│ │ │ ├── log4net.dll
│ │ │ └── log4net.xml
│ │ └── 2.0
│ │ │ ├── log4net.dll
│ │ │ └── log4net.xml
│ └── log4net.1.2.10.nupkg
└── repositories.config
├── README
├── ReferencedAssemblies
├── ASP.NET MVC
│ ├── Microsoft.Web.Mvc.dll
│ ├── System.Web.Abstractions.dll
│ ├── System.Web.Helpers.dll
│ ├── System.Web.Helpers.xml
│ ├── System.Web.Mvc.dll
│ ├── System.Web.Razor.dll
│ ├── System.Web.Razor.xml
│ ├── System.Web.Routing.dll
│ ├── System.Web.WebPages.Razor.dll
│ ├── System.Web.WebPages.Razor.xml
│ ├── System.Web.WebPages.dll
│ └── System.Web.WebPages.xml
└── Machine.Specifications
│ ├── CommandLine.dll
│ ├── CommandLine.xml
│ ├── InstallResharperRunner.4.1.bat
│ ├── InstallResharperRunner.4.5.bat
│ ├── InstallResharperRunner.5.0 - VS2008.bat
│ ├── InstallResharperRunner.5.0 - VS2010.bat
│ ├── InstallResharperRunner.5.1 - VS2008.bat
│ ├── InstallResharperRunner.5.1 - VS2010.bat
│ ├── InstallResharperRunner.6.0 - VS2008.bat
│ ├── InstallResharperRunner.6.0 - VS2010.bat
│ ├── InstallTDNetRunner.bat
│ ├── InstallTDNetRunnerSilent.bat
│ ├── License.txt
│ ├── Machine.Specifications.AutoMocking.dll
│ ├── Machine.Specifications.GallioAdapter.3.1.dll
│ ├── Machine.Specifications.GallioAdapter.plugin
│ ├── Machine.Specifications.Mvc.dll
│ ├── Machine.Specifications.ReSharperRunner.4.1.dll
│ ├── Machine.Specifications.ReSharperRunner.4.5.dll
│ ├── Machine.Specifications.ReSharperRunner.5.0.dll
│ ├── Machine.Specifications.ReSharperRunner.5.1.dll
│ ├── Machine.Specifications.ReSharperRunner.6.0.dll
│ ├── Machine.Specifications.Reporting.Templates.dll
│ ├── Machine.Specifications.Reporting.dll
│ ├── Machine.Specifications.SeleniumSupport.dll
│ ├── Machine.Specifications.TDNetRunner.dll
│ ├── Machine.Specifications.WatinSupport.dll
│ ├── Machine.Specifications.dll
│ ├── Machine.Specifications.dll.tdnet
│ ├── NUnit.Specifications.AutoMocking.dll
│ ├── Spark.dll
│ ├── TestDriven.Framework.dll
│ ├── install.ps1
│ ├── mspec-clr4.exe
│ ├── mspec-clr4.exe.config
│ ├── mspec-x86-clr4.exe
│ ├── mspec-x86-clr4.exe.config
│ ├── mspec-x86.exe
│ └── mspec.exe
└── Solutions
├── Backup
├── SharpArchCookbook.Web.Mvc
│ ├── Global.asax.cs
│ ├── SharpArchCookbook.Web.Mvc.csproj
│ ├── Web.config
│ └── packages.config
└── SharpArchCookbook.sln
├── MSpecTests.SharpArchCookbook
├── MSpecTests.SharpArchCookbook.csproj
├── MSpecTests.SharpArchCookbook.csproj.vspscc
├── Properties
│ └── AssemblyInfo.cs
├── Tasks
│ ├── ProductModelTasksSpecs.cs
│ └── ProductTasksSpecs.cs
├── Web.Mvc.Controllers
│ ├── ProductModelsController.cs
│ └── ProductsControllerSpecs.cs
└── packages.config
├── Settings.StyleCop
├── SharpArchCookbook.Domain
├── Address.cs
├── Contracts
│ └── Tasks
│ │ └── IProductModelTasks.cs
├── Customer.cs
├── CustomerAddress.cs
├── Product.cs
├── ProductCategory.cs
├── ProductDescription.cs
├── ProductModeProductionDescription.cs
├── ProductModel.cs
├── Properties
│ └── AssemblyInfo.cs
├── SalesOrderDetail.cs
├── SalesOrderHeader.cs
├── SalesStatus.cs
├── SharpArchCookbook.Domain.csproj
├── SharpArchCookbook.Domain.csproj.vspscc
└── packages.config
├── SharpArchCookbook.Infrastructure
├── NHibernateMaps
│ ├── AddressMap.cs
│ ├── AutoPersistenceModelGenerator.cs
│ ├── AutomappingConfiguration.cs
│ ├── Conventions
│ │ ├── CustomForeignKeyConvention.cs
│ │ ├── HasManyConvention.cs
│ │ ├── PrimaryKeyConvention.cs
│ │ └── TableNameConvention.cs
│ ├── CustomerAddressMap.cs
│ ├── CustomerMap.cs
│ ├── ProductCategoryMap.cs
│ ├── ProductMap.cs
│ ├── ProductModelMap.cs
│ ├── ProductModelProductDescriptionMap.cs
│ ├── SalesOrderDetailMap.cs
│ └── SalesOrderHeaderMap.cs
├── Properties
│ └── AssemblyInfo.cs
├── SharpArchCookbook.Infrastructure.csproj
├── SharpArchCookbook.Infrastructure.csproj.vspscc
└── packages.config
├── SharpArchCookbook.Tasks
├── CommandHandlers
│ ├── AddCustomerAddressHandler.cs
│ └── ChangeCustomerAddressHandler.cs
├── Commands
│ ├── AddCustomerAddressCommand.cs
│ ├── AddressCommandBase.cs
│ └── ChangeCustomerAddressCommand.cs
├── ProductModelTasks.cs
├── Properties
│ └── AssemblyInfo.cs
├── SharpArchCookbook.Tasks.csproj
└── packages.config
├── SharpArchCookbook.Tests
├── App.config
├── Hibernate.cfg.xml
├── ProductsQueryObjectTests.cs
├── Properties
│ └── AssemblyInfo.cs
├── ServiceLocatorInitializer.cs
└── SharpArchCookbook.Tests.csproj
├── SharpArchCookbook.Web.Mvc
├── CastleWindsor
│ ├── ControllerInstaller.cs
│ ├── HandlerInstaller.cs
│ ├── QueryInstaller.cs
│ ├── RepositoryInstaller.cs
│ ├── SharpArchInstaller.cs
│ └── TasksInstaller.cs
├── Content
│ ├── Site.css
│ ├── img
│ │ ├── sharp_arch.jpg
│ │ └── sharp_arch_small.gif
│ └── js
│ │ ├── jquery-1.6.1.min.js
│ │ └── modernizr-1.7.min.js
├── Controllers
│ ├── CustomerController.cs
│ ├── HomeController.cs
│ ├── ProductModelsController.cs
│ ├── ProductsController.cs
│ ├── Queries
│ │ └── Products
│ │ │ ├── IProductsForSaleQuery.cs
│ │ │ ├── IProductsListQuery.cs
│ │ │ ├── ProductsForSaleQuery.cs
│ │ │ └── ProductsListQuery.cs
│ ├── RouteRegistrar.cs
│ └── ViewModels
│ │ ├── AddressChangeFormViewModel.cs
│ │ ├── ProductViewModel.cs
│ │ └── ProductsListViewModel.cs
├── Global.asax
├── Global.asax.cs
├── NHibernate.config
├── Properties
│ └── AssemblyInfo.cs
├── README.txt
├── SharpArchCookbook.Web.Mvc.csproj
├── Views
│ ├── Customer
│ │ ├── ChangeAddress.cshtml
│ │ └── Index.cshtml
│ ├── Home
│ │ └── Index.cshtml
│ ├── ProductModels
│ │ ├── CreateOrUpdate.cshtml
│ │ └── Index.cshtml
│ ├── Products
│ │ ├── ForSale.cshtml
│ │ └── Index.cshtml
│ ├── Shared
│ │ └── _Layout.cshtml
│ └── Web.config
├── Web.config
├── _rltm_build_fl_SharpArchCookbook.Web.Mvc.csproj
└── packages.config
├── SharpArchCookbook.sln
├── SharpArchCookbook.sln.DotSettings.user
├── StyleCopCompatibleResharperCodeStyle.xml
└── nuget.config
/.gitignore:
--------------------------------------------------------------------------------
1 | [Oo]bj
2 | [Bb]in
3 | debug
4 | _Resharper.*
5 | _ReSharper.*
6 | *.csproj.user
7 | *.resharper.user
8 | *.ReSharper.user
9 | *.resharper
10 | *.ReSharper
11 | *.suo
12 | *.cache
13 | *~
14 | *.swp
15 | *.dbproj.user
16 | *.dbmdl
17 | error-*.xml
18 |
19 | *.dotCover
20 | *mm_cache.bin
21 | *.pidb
22 | *.userprefs
--------------------------------------------------------------------------------
/.gitmodules:
--------------------------------------------------------------------------------
1 | [submodule "BuildSystem"]
2 | path = BuildSystem
3 | url = git://github.com/sharparchitecture/Sharp-Architecture-Build.git
4 |
--------------------------------------------------------------------------------
/Build/Build.cmd:
--------------------------------------------------------------------------------
1 | %windir%\Microsoft.NET\Framework\v4.0.30319\msbuild Build.proj /t:Build /p:IsDesktopBuild=true
2 | pause
--------------------------------------------------------------------------------
/Build/Build.proj:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | SharpArchCookbook
6 | $(MSBuildProjectDirectory)\..\Solutions
7 | $(MSBuildProjectDirectory)\..\BuildSystem
8 | $(SolutionsPath)\$(SolutionName).Web
9 | $(BuildPath)\..\..
10 |
11 |
12 |
13 |
17 | $(DropsPath)\$(GlobalBuildVersionNumber)\$(PackageName).Source.v$(GlobalBuildVersionNumber).zip
18 | $(WebAppPath)
19 |
20 |
21 |
22 |
23 |
24 |
28 |
29 |
33 |
34 |
--------------------------------------------------------------------------------
/Build/BuildAndPackage.cmd:
--------------------------------------------------------------------------------
1 | %windir%\Microsoft.NET\Framework\v4.0.30319\msbuild Build.proj /p:IsDesktopBuild=true
2 | pause
--------------------------------------------------------------------------------
/Common/AssemblyVersion.cs:
--------------------------------------------------------------------------------
1 | //------------------------------------------------------------------------------
2 | //
3 | // This code was generated by a tool.
4 | // Runtime Version:4.0.30319.237
5 | //
6 | // Changes to this file may cause incorrect behavior and will be lost if
7 | // the code is regenerated.
8 | //
9 | //------------------------------------------------------------------------------
10 |
11 | using System;
12 | using System.Reflection;
13 | using System.Runtime.CompilerServices;
14 | using System.Runtime.InteropServices;
15 |
16 | [assembly: AssemblyFileVersion("1.0.0.0")]
17 | [assembly: AssemblyInformationalVersion("1.0.0.0")]
18 | [assembly: AssemblyVersion("1.0.0.0")]
19 |
20 |
21 |
--------------------------------------------------------------------------------
/Common/CommonAssemblyInfo.cs:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sharparchitecture/Sharp-Architecture-Cookbook/66b2f503ff765558b3a2e76b10a7ad1e2ba413f3/Common/CommonAssemblyInfo.cs
--------------------------------------------------------------------------------
/Packages/Castle.Core.3.2.2/BreakingChanges.txt:
--------------------------------------------------------------------------------
1 | === version 3.0
2 | ================================================================================================
3 | change - Removed overloads of logging methods that were taking format string from ILogger and
4 | ILogger and IExtendedLogger and didn't have word Format in their name.
5 | For example:
6 | void Error(string format, params object[] args); // was removed
7 | void ErrorFormat(string format, params object[] args); //use this one instead
8 |
9 |
10 | impact - low
11 | fixability - medium
12 | revision -
13 |
14 | description - To minimize confusion and duplication those methods were removed.
15 |
16 | fix - Use methods that have explicit "Format" word in their name and same signature.
17 | ================================================================================================
18 | change - Removed WebLogger and WebLoggerFactory
19 |
20 | impact - low
21 | fixability - medium
22 | revision -
23 |
24 | description - To minimize management overhead the classes were removed so that only single
25 | Client Profile version of Castle.Core can be distributed.
26 |
27 | fix - You can use NLog or Log4Net web logger integration, or reuse implementation of existing
28 | web logger and use it as a custom logger.
29 |
30 | ================================================================================================
31 | change - Removed obsolete overload of ProxyGenerator.CreateClassProxy
32 |
33 | impact - low
34 | fixability - trivial
35 | revision -
36 |
37 | description - Deprecated overload of ProxyGenerator.CreateClassProxy was removed to keep the
38 | method consistent with other methods and to remove confusion
39 |
40 | fix - whenever removed overload was used, use one of the other overloads.
41 |
42 | ================================================================================================
43 | change - IProxyGenerationHook.NonVirtualMemberNotification method was renamed
44 |
45 | impact - high
46 | fixability - easy
47 | revision -
48 |
49 | description - to accommodate class proxies with target method NonVirtualMemberNotification on
50 | IProxyGenerationHook type was renamed to more accurate NonProxyableMemberNotification
51 | since for class proxies with target not just methods but also fields and other member that
52 | break the abstraction will be passed to this method.
53 |
54 | fix - whenever NonVirtualMemberNotification is used/implemented change the method name to
55 | NonProxyableMemberNotification. Implementors should also accommodate possibility that not
56 | only MethodInfos will be passed as method's second parameter.
57 |
58 | ================================================================================================
59 | change - DynamicProxy will now allow to intercept members of System.Object
60 |
61 | impact - very low
62 | fixability - easy
63 | revision -
64 |
65 | description - to allow scenarios like mocking of System.Object members, DynamicProxy will not
66 | disallow proxying of these methods anymore. AllMethodsHook (default IProxyGenerationHook)
67 | will still filter them out though.
68 |
69 | fix - whenever custom IProxyGenerationHook is used, user should account for System.Object's
70 | members being now passed to ShouldInterceptMethod and NonVirtualMemberNotification methods
71 | and if neccessary update the code to handle them appropriately.
72 |
--------------------------------------------------------------------------------
/Packages/Castle.Core.3.2.2/Castle.Core.3.2.2.nupkg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sharparchitecture/Sharp-Architecture-Cookbook/66b2f503ff765558b3a2e76b10a7ad1e2ba413f3/Packages/Castle.Core.3.2.2/Castle.Core.3.2.2.nupkg
--------------------------------------------------------------------------------
/Packages/Castle.Core.3.2.2/Castle.Core.3.2.2.nuspec:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | Castle.Core
5 | 3.2.2
6 | Castle Project Contributors
7 | Castle Project Contributors
8 | http://www.apache.org/licenses/LICENSE-2.0.html
9 | http://www.castleproject.org/
10 | http://docs.castleproject.org/GetFile.aspx?File=/castleLogo100px.png
11 | false
12 | Castle Project Core, including DynamicProxy, Logging Abstractions and DictionaryAdapter
13 | Castle Project Core, including DynamicProxy, Logging Abstractions and DictionaryAdapter
14 | Copyright 2004-2013 Castle Project - http://www.castleproject.org/
15 | castle dynamicproxy dynamic proxy dynamicproxy2 dictionaryadapter emailsender
16 |
17 |
--------------------------------------------------------------------------------
/Packages/Castle.Core.3.2.2/Changes.txt:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sharparchitecture/Sharp-Architecture-Cookbook/66b2f503ff765558b3a2e76b10a7ad1e2ba413f3/Packages/Castle.Core.3.2.2/Changes.txt
--------------------------------------------------------------------------------
/Packages/Castle.Core.3.2.2/License.txt:
--------------------------------------------------------------------------------
1 | Copyright 2004-2013 Castle Project - http://www.castleproject.org/
2 |
3 | Licensed under the Apache License, Version 2.0 (the "License");
4 | you may not use this file except in compliance with the License.
5 | You may obtain a copy of the License at
6 |
7 | http://www.apache.org/licenses/LICENSE-2.0
8 |
9 | Unless required by applicable law or agreed to in writing, software
10 | distributed under the License is distributed on an "AS IS" BASIS,
11 | WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12 | See the License for the specific language governing permissions and
13 | limitations under the License.
14 |
15 |
--------------------------------------------------------------------------------
/Packages/Castle.Core.3.2.2/lib/net35/Castle.Core.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sharparchitecture/Sharp-Architecture-Cookbook/66b2f503ff765558b3a2e76b10a7ad1e2ba413f3/Packages/Castle.Core.3.2.2/lib/net35/Castle.Core.dll
--------------------------------------------------------------------------------
/Packages/Castle.Core.3.2.2/lib/net40-client/Castle.Core.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sharparchitecture/Sharp-Architecture-Cookbook/66b2f503ff765558b3a2e76b10a7ad1e2ba413f3/Packages/Castle.Core.3.2.2/lib/net40-client/Castle.Core.dll
--------------------------------------------------------------------------------
/Packages/Castle.Core.3.2.2/lib/net45/Castle.Core.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sharparchitecture/Sharp-Architecture-Cookbook/66b2f503ff765558b3a2e76b10a7ad1e2ba413f3/Packages/Castle.Core.3.2.2/lib/net45/Castle.Core.dll
--------------------------------------------------------------------------------
/Packages/Castle.Core.3.2.2/lib/sl4/Castle.Core.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sharparchitecture/Sharp-Architecture-Cookbook/66b2f503ff765558b3a2e76b10a7ad1e2ba413f3/Packages/Castle.Core.3.2.2/lib/sl4/Castle.Core.dll
--------------------------------------------------------------------------------
/Packages/Castle.Core.3.2.2/lib/sl5/Castle.Core.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sharparchitecture/Sharp-Architecture-Cookbook/66b2f503ff765558b3a2e76b10a7ad1e2ba413f3/Packages/Castle.Core.3.2.2/lib/sl5/Castle.Core.dll
--------------------------------------------------------------------------------
/Packages/Castle.Core.3.2.2/readme.txt:
--------------------------------------------------------------------------------
1 | Thanks for downloading this Castle package.
2 | You can find full list of changes in changes.txt
3 |
4 | Documentation (work in progress, contributions appreciated):
5 | Dictionary Adapter - http://docs.castleproject.org/Tools.Castle-DictionaryAdapter.ashx
6 | DynamicProxy - http://docs.castleproject.org/Tools.DynamicProxy.ashx
7 | Discusssion group: - http://groups.google.com/group/castle-project-users
8 | StackOverflow tags: - castle-dynamicproxy, castle-dictionaryadapter, castle
9 |
10 | Issue tracker: - http://issues.castleproject.org/dashboard
--------------------------------------------------------------------------------
/Packages/Castle.Windsor.3.2.1/Castle.Windsor.3.2.1.nupkg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sharparchitecture/Sharp-Architecture-Cookbook/66b2f503ff765558b3a2e76b10a7ad1e2ba413f3/Packages/Castle.Windsor.3.2.1/Castle.Windsor.3.2.1.nupkg
--------------------------------------------------------------------------------
/Packages/Castle.Windsor.3.2.1/Castle.Windsor.3.2.1.nuspec:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | Castle.Windsor
5 | 3.2.1
6 | Castle Windsor
7 | Castle Project Contributors
8 | Castle Project Contributors
9 | http://www.apache.org/licenses/LICENSE-2.0.html
10 | http://docs.castleproject.org/Windsor.MainPage.ashx
11 | http://docs.castleproject.org/GetFile.aspx?File=/windsorLogo100px.png
12 | false
13 | Castle Windsor is best of breed, mature Inversion of Control container available for .NET and Silverlight.
14 | Copyright 2004-2013 Castle Project - http://www.castleproject.org/
15 | castle windsor inversionOfControl DependencyInjection
16 |
17 |
18 |
19 |
20 |
21 |
22 |
23 |
24 |
25 |
26 |
27 |
28 |
29 |
30 |
31 |
32 |
33 |
34 |
--------------------------------------------------------------------------------
/Packages/Castle.Windsor.3.2.1/Changes.txt:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sharparchitecture/Sharp-Architecture-Cookbook/66b2f503ff765558b3a2e76b10a7ad1e2ba413f3/Packages/Castle.Windsor.3.2.1/Changes.txt
--------------------------------------------------------------------------------
/Packages/Castle.Windsor.3.2.1/License.txt:
--------------------------------------------------------------------------------
1 | Copyright 2004-2013 Castle Project - http://www.castleproject.org/
2 |
3 | Licensed under the Apache License, Version 2.0 (the "License");
4 | you may not use this file except in compliance with the License.
5 | You may obtain a copy of the License at
6 |
7 | http://www.apache.org/licenses/LICENSE-2.0
8 |
9 | Unless required by applicable law or agreed to in writing, software
10 | distributed under the License is distributed on an "AS IS" BASIS,
11 | WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12 | See the License for the specific language governing permissions and
13 | limitations under the License.
14 |
15 |
--------------------------------------------------------------------------------
/Packages/Castle.Windsor.3.2.1/lib/net35/Castle.Windsor.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sharparchitecture/Sharp-Architecture-Cookbook/66b2f503ff765558b3a2e76b10a7ad1e2ba413f3/Packages/Castle.Windsor.3.2.1/lib/net35/Castle.Windsor.dll
--------------------------------------------------------------------------------
/Packages/Castle.Windsor.3.2.1/lib/net40-client/Castle.Windsor.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sharparchitecture/Sharp-Architecture-Cookbook/66b2f503ff765558b3a2e76b10a7ad1e2ba413f3/Packages/Castle.Windsor.3.2.1/lib/net40-client/Castle.Windsor.dll
--------------------------------------------------------------------------------
/Packages/Castle.Windsor.3.2.1/lib/net40/Castle.Windsor.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sharparchitecture/Sharp-Architecture-Cookbook/66b2f503ff765558b3a2e76b10a7ad1e2ba413f3/Packages/Castle.Windsor.3.2.1/lib/net40/Castle.Windsor.dll
--------------------------------------------------------------------------------
/Packages/Castle.Windsor.3.2.1/lib/net45/Castle.Windsor.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sharparchitecture/Sharp-Architecture-Cookbook/66b2f503ff765558b3a2e76b10a7ad1e2ba413f3/Packages/Castle.Windsor.3.2.1/lib/net45/Castle.Windsor.dll
--------------------------------------------------------------------------------
/Packages/Castle.Windsor.3.2.1/lib/sl4/Castle.Windsor.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sharparchitecture/Sharp-Architecture-Cookbook/66b2f503ff765558b3a2e76b10a7ad1e2ba413f3/Packages/Castle.Windsor.3.2.1/lib/sl4/Castle.Windsor.dll
--------------------------------------------------------------------------------
/Packages/Castle.Windsor.3.2.1/lib/sl5/Castle.Windsor.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sharparchitecture/Sharp-Architecture-Cookbook/66b2f503ff765558b3a2e76b10a7ad1e2ba413f3/Packages/Castle.Windsor.3.2.1/lib/sl5/Castle.Windsor.dll
--------------------------------------------------------------------------------
/Packages/Castle.Windsor.3.2.1/readme.txt:
--------------------------------------------------------------------------------
1 | Thanks for downloading this Castle Windsor package.
2 | You can find full list of changes in changes.txt
3 |
4 | Documentation: - http://docs.castleproject.org/Windsor.MainPage.ashx
5 | Discusssion group: - http://groups.google.com/group/castle-project-users
6 | StackOverflow tags: - castle-windsor, castle
7 |
8 | Issue tracker: - http://issues.castleproject.org/dashboard
--------------------------------------------------------------------------------
/Packages/CommonServiceLocator.1.0/CommonServiceLocator.1.0.nupkg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sharparchitecture/Sharp-Architecture-Cookbook/66b2f503ff765558b3a2e76b10a7ad1e2ba413f3/Packages/CommonServiceLocator.1.0/CommonServiceLocator.1.0.nupkg
--------------------------------------------------------------------------------
/Packages/CommonServiceLocator.1.0/lib/NET35/Microsoft.Practices.ServiceLocation.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sharparchitecture/Sharp-Architecture-Cookbook/66b2f503ff765558b3a2e76b10a7ad1e2ba413f3/Packages/CommonServiceLocator.1.0/lib/NET35/Microsoft.Practices.ServiceLocation.dll
--------------------------------------------------------------------------------
/Packages/CommonServiceLocator.1.0/lib/NET35/Microsoft.Practices.ServiceLocation.pdb:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sharparchitecture/Sharp-Architecture-Cookbook/66b2f503ff765558b3a2e76b10a7ad1e2ba413f3/Packages/CommonServiceLocator.1.0/lib/NET35/Microsoft.Practices.ServiceLocation.pdb
--------------------------------------------------------------------------------
/Packages/CommonServiceLocator.1.0/lib/SL30/Microsoft.Practices.ServiceLocation.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sharparchitecture/Sharp-Architecture-Cookbook/66b2f503ff765558b3a2e76b10a7ad1e2ba413f3/Packages/CommonServiceLocator.1.0/lib/SL30/Microsoft.Practices.ServiceLocation.dll
--------------------------------------------------------------------------------
/Packages/CommonServiceLocator.WindsorAdapter.1.0/CommonServiceLocator.WindsorAdapter.1.0.nupkg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sharparchitecture/Sharp-Architecture-Cookbook/66b2f503ff765558b3a2e76b10a7ad1e2ba413f3/Packages/CommonServiceLocator.WindsorAdapter.1.0/CommonServiceLocator.WindsorAdapter.1.0.nupkg
--------------------------------------------------------------------------------
/Packages/CommonServiceLocator.WindsorAdapter.1.0/lib/NET35/CommonServiceLocator.WindsorAdapter.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sharparchitecture/Sharp-Architecture-Cookbook/66b2f503ff765558b3a2e76b10a7ad1e2ba413f3/Packages/CommonServiceLocator.WindsorAdapter.1.0/lib/NET35/CommonServiceLocator.WindsorAdapter.dll
--------------------------------------------------------------------------------
/Packages/CommonServiceLocator.WindsorAdapter.1.0/lib/NET35/CommonServiceLocator.WindsorAdapter.pdb:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sharparchitecture/Sharp-Architecture-Cookbook/66b2f503ff765558b3a2e76b10a7ad1e2ba413f3/Packages/CommonServiceLocator.WindsorAdapter.1.0/lib/NET35/CommonServiceLocator.WindsorAdapter.pdb
--------------------------------------------------------------------------------
/Packages/FluentNHibernate.1.4.0.0/FluentNHibernate.1.4.0.0.nupkg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sharparchitecture/Sharp-Architecture-Cookbook/66b2f503ff765558b3a2e76b10a7ad1e2ba413f3/Packages/FluentNHibernate.1.4.0.0/FluentNHibernate.1.4.0.0.nupkg
--------------------------------------------------------------------------------
/Packages/FluentNHibernate.1.4.0.0/FluentNHibernate.1.4.0.0.nuspec:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | FluentNHibernate
5 | 1.4.0.0
6 | James Gregory and contributors
7 | James Gregory and contributors
8 | http://github.com/jagregory/fluent-nhibernate/blob/master/LICENSE.txt
9 | http://github.com/jagregory/fluent-nhibernate/
10 | false
11 | Fluent, XML-less, compile safe, automated, convention-based mappings for NHibernate.
12 | Fluent NHibernate provides a conventient way to configure NHibernate - no XML involved.
13 | en-US
14 | orm dal nhibernate conventions
15 |
16 |
17 |
18 |
19 |
--------------------------------------------------------------------------------
/Packages/FluentNHibernate.1.4.0.0/lib/net35/FluentNHibernate.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sharparchitecture/Sharp-Architecture-Cookbook/66b2f503ff765558b3a2e76b10a7ad1e2ba413f3/Packages/FluentNHibernate.1.4.0.0/lib/net35/FluentNHibernate.dll
--------------------------------------------------------------------------------
/Packages/Iesi.Collections.3.3.3.4001/Iesi.Collections.3.3.3.4001.nupkg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sharparchitecture/Sharp-Architecture-Cookbook/66b2f503ff765558b3a2e76b10a7ad1e2ba413f3/Packages/Iesi.Collections.3.3.3.4001/Iesi.Collections.3.3.3.4001.nupkg
--------------------------------------------------------------------------------
/Packages/Iesi.Collections.3.3.3.4001/Iesi.Collections.3.3.3.4001.nuspec:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | Iesi.Collections
5 | 3.3.3.4001
6 | Aidant Systems, Jason Smith, NHibernate community
7 | Aidant Systems, Jason Smith, NHibernate community
8 | false
9 | The System.Collections namespace in the .NET Framework provides a number of collection
10 | types that are extremely useful for manipulating data in memory. However, there is one
11 | type of collection that is conspicuously missing from System.Collections: the Set.
12 | en-US
13 | Collections
14 |
15 |
--------------------------------------------------------------------------------
/Packages/Iesi.Collections.3.3.3.4001/lib/Net35/Iesi.Collections.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sharparchitecture/Sharp-Architecture-Cookbook/66b2f503ff765558b3a2e76b10a7ad1e2ba413f3/Packages/Iesi.Collections.3.3.3.4001/lib/Net35/Iesi.Collections.dll
--------------------------------------------------------------------------------
/Packages/Mvc3Futures.3.0.20105.0/Mvc3Futures.3.0.20105.0.nupkg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sharparchitecture/Sharp-Architecture-Cookbook/66b2f503ff765558b3a2e76b10a7ad1e2ba413f3/Packages/Mvc3Futures.3.0.20105.0/Mvc3Futures.3.0.20105.0.nupkg
--------------------------------------------------------------------------------
/Packages/Mvc3Futures.3.0.20105.0/lib/Microsoft.Web.Mvc.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sharparchitecture/Sharp-Architecture-Cookbook/66b2f503ff765558b3a2e76b10a7ad1e2ba413f3/Packages/Mvc3Futures.3.0.20105.0/lib/Microsoft.Web.Mvc.dll
--------------------------------------------------------------------------------
/Packages/MvcContrib.Mvc3-ci.3.0.100.0/MvcContrib.Mvc3-ci.3.0.100.0.nupkg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sharparchitecture/Sharp-Architecture-Cookbook/66b2f503ff765558b3a2e76b10a7ad1e2ba413f3/Packages/MvcContrib.Mvc3-ci.3.0.100.0/MvcContrib.Mvc3-ci.3.0.100.0.nupkg
--------------------------------------------------------------------------------
/Packages/MvcContrib.Mvc3-ci.3.0.100.0/MvcContrib.Mvc3-ci.3.0.100.0.nuspec:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | MvcContrib.Mvc3-ci
5 | 3.0.100.0
6 | Outercurve Foundation
7 | Outercurve Foundation
8 | http://mvccontrib.codeplex.com/license
9 | http://mvccontrib.codeplex.com/
10 | false
11 | MvcContrib was designed to add functionality and ease-of-use to Microsoft's ASP.NET MVC Framework, MVC Contrib is useful for developers looking to develop and test UI elements on top of the ASP.NET MVC framework.
12 | MvcContrib was designed to add functionality and ease-of-use to Microsoft's ASP.NET MVC Framework, MVC Contrib is useful for developers looking to develop and test UI elements on top of the ASP.NET MVC framework.
13 | mvc
14 |
15 |
16 |
17 |
18 |
--------------------------------------------------------------------------------
/Packages/MvcContrib.Mvc3-ci.3.0.100.0/lib/MvcContrib.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sharparchitecture/Sharp-Architecture-Cookbook/66b2f503ff765558b3a2e76b10a7ad1e2ba413f3/Packages/MvcContrib.Mvc3-ci.3.0.100.0/lib/MvcContrib.dll
--------------------------------------------------------------------------------
/Packages/MvcContrib.Mvc3.FluentHtml-ci.3.0.100.0/MvcContrib.Mvc3.FluentHtml-ci.3.0.100.0.nupkg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sharparchitecture/Sharp-Architecture-Cookbook/66b2f503ff765558b3a2e76b10a7ad1e2ba413f3/Packages/MvcContrib.Mvc3.FluentHtml-ci.3.0.100.0/MvcContrib.Mvc3.FluentHtml-ci.3.0.100.0.nupkg
--------------------------------------------------------------------------------
/Packages/MvcContrib.Mvc3.FluentHtml-ci.3.0.100.0/MvcContrib.Mvc3.FluentHtml-ci.3.0.100.0.nuspec:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | MvcContrib.Mvc3.FluentHtml-ci
5 | 3.0.100.0
6 | Outercurve Foundation
7 | Outercurve Foundation
8 | http://mvccontrib.codeplex.com/license
9 | http://mvccontrib.codeplex.com/
10 | false
11 | MvcContrib.FluentHtml is a library of extensible, strongly-typed HTML helpers that employs a fluent API to increase productivty of authoring MVC views.
12 | MvcContrib.FluentHtml is a library of extensible, strongly-typed HTML helpers that employs a fluent API to increase productivty of authoring MVC views.
13 | mvc
14 |
15 |
--------------------------------------------------------------------------------
/Packages/MvcContrib.Mvc3.FluentHtml-ci.3.0.100.0/lib/MvcContrib.FluentHtml.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sharparchitecture/Sharp-Architecture-Cookbook/66b2f503ff765558b3a2e76b10a7ad1e2ba413f3/Packages/MvcContrib.Mvc3.FluentHtml-ci.3.0.100.0/lib/MvcContrib.FluentHtml.dll
--------------------------------------------------------------------------------
/Packages/NHibernate.3.3.3.4001/ConfigurationTemplates/FireBird.cfg.xml:
--------------------------------------------------------------------------------
1 |
2 |
12 |
17 |
18 |
19 | NHibernate.Driver.FirebirdClientDriver
20 |
21 | Server=localhost;
22 | Database=C:\nhibernate.fdb;
23 | User=SYSDBA;Password=masterkey
24 |
25 | false
26 | NHibernate.Dialect.FirebirdDialect
27 | 60
28 | true 1, false 0, yes 1, no 0
29 |
30 |
31 |
--------------------------------------------------------------------------------
/Packages/NHibernate.3.3.3.4001/ConfigurationTemplates/MSSQL.cfg.xml:
--------------------------------------------------------------------------------
1 |
2 |
7 |
8 |
9 |
10 | NHibernate.Driver.SqlClientDriver
11 |
12 | Server=(local);initial catalog=nhibernate;Integrated Security=SSPI
13 |
14 | NHibernate.Dialect.MsSql2008Dialect
15 |
16 |
--------------------------------------------------------------------------------
/Packages/NHibernate.3.3.3.4001/ConfigurationTemplates/MySql.cfg.xml:
--------------------------------------------------------------------------------
1 |
2 |
7 |
8 |
9 |
10 | NHibernate.Driver.MySqlDataDriver
11 |
12 | Database=test;Data Source=someip;User Id=blah;Password=blah
13 |
14 | NHibernate.Dialect.MySQLDialect
15 |
16 |
--------------------------------------------------------------------------------
/Packages/NHibernate.3.3.3.4001/ConfigurationTemplates/Oracle.cfg.xml:
--------------------------------------------------------------------------------
1 |
2 |
7 |
8 |
9 |
10 | NHibernate.Driver.OracleClientDriver
11 |
12 | User ID=nhibernate;Password=nhibernate;Data Source=localhost
13 |
14 | false
15 | NHibernate.Dialect.OracleDialect
16 | true 1, false 0, yes 'Y', no 'N'
17 |
18 |
--------------------------------------------------------------------------------
/Packages/NHibernate.3.3.3.4001/ConfigurationTemplates/PostgreSQL.cfg.xml:
--------------------------------------------------------------------------------
1 |
2 |
7 |
8 |
9 | NHibernate.Driver.NpgsqlDriver
10 |
11 | Server=localhost;Database=nhibernate;User ID=nhibernate;Password=nhibernate;
12 |
13 | NHibernate.Dialect.PostgreSQL82Dialect
14 |
15 |
--------------------------------------------------------------------------------
/Packages/NHibernate.3.3.3.4001/ConfigurationTemplates/SQLite.cfg.xml:
--------------------------------------------------------------------------------
1 |
2 |
7 |
8 |
9 | NHibernate.Driver.SQLite20Driver
10 |
11 | Data Source=nhibernate.db
12 |
13 | NHibernate.Dialect.SQLiteDialect
14 |
15 |
--------------------------------------------------------------------------------
/Packages/NHibernate.3.3.3.4001/ConfigurationTemplates/SybaseASE.cfg.xml:
--------------------------------------------------------------------------------
1 |
2 |
7 |
8 |
9 | NHibernate.Driver.SybaseAseClientDriver
10 |
11 | Data Source=10.0.0.1;Port=5000;Database=nhibernate;User ID=nhibernate;Password=password
12 |
13 | NHibernate.Dialect.SybaseASE15Dialect
14 | true=1;false=0
15 |
16 |
--------------------------------------------------------------------------------
/Packages/NHibernate.3.3.3.4001/ConfigurationTemplates/SybaseSQLAnywhere.cfg.xml:
--------------------------------------------------------------------------------
1 |
2 |
7 |
8 |
9 | NHibernate.Driver.SybaseSQLAnywhereDriver
10 |
11 | UID=DBA;PWD=sql;Server=localhost;DBN=nhibernate;DBF=c:\nhibernate.db;ASTOP=No
12 |
13 | NHibernate.Dialect.SybaseSQLAnywhere12Dialect
14 | true=1;false=0
15 |
16 |
--------------------------------------------------------------------------------
/Packages/NHibernate.3.3.3.4001/NHibernate.3.3.3.4001.nupkg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sharparchitecture/Sharp-Architecture-Cookbook/66b2f503ff765558b3a2e76b10a7ad1e2ba413f3/Packages/NHibernate.3.3.3.4001/NHibernate.3.3.3.4001.nupkg
--------------------------------------------------------------------------------
/Packages/NHibernate.3.3.3.4001/NHibernate.3.3.3.4001.nuspec:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | NHibernate
5 | 3.3.3.4001
6 | NHibernate community, Hibernate community
7 | NHibernate community, Hibernate community
8 | https://raw.github.com/nhibernate/nhibernate-core/3.3.x/lgpl.txt
9 | http://www.nhforge.org/
10 | https://raw.github.com/nhibernate/nhibernate-core/3.3.x/logo/NHibernate-NuGet.png
11 | false
12 | NHibernate is a mature, open source object-relational mapper for the .NET framework. It is actively developed, fully featured and used in thousands of successful projects.
13 | NHibernate is a mature, open source object-relational mapper for the .NET framework. It is actively developed, fully featured and used in thousands of successful projects.
14 | en-US
15 | ORM DataBase DAL ObjectRelationalMapping
16 |
17 |
18 |
19 |
20 |
--------------------------------------------------------------------------------
/Packages/NHibernate.3.3.3.4001/NHibernate.readme.html:
--------------------------------------------------------------------------------
1 |
Welcome to NHibernate
2 |
3 | NHibernate is a mature, open source object-relational mapper for the .NET framework. It is actively developed,
4 | fully featured and used in thousands of successful projects.
5 |
6 | The NHibernate community website - http://www.nhforge.org - has a range of resources to help you get started,
7 | including wikis , blogs and reference documentation .
8 |
9 | Latest Version
10 |
11 | The quickest way to get the latest release of NHibernate is to add it to your project using
12 | NuGet (http://nuget.org/List/Packages/NHibernate ).
13 |
14 | Alternatively binaries are available from SourceForge at http://sourceforge.net/projects/nhibernate .
15 |
16 | You are encouraged to review the release notes (releasenotes.txt), particularly when upgrading to a
17 | later version. The release notes will generally document any breaking changes.
18 |
19 |
20 |
21 | There are two official NHibernate community forums:
22 |
23 |
27 |
28 | Bug Reports
29 |
30 | If you find any bugs, please report them using the JIRA bug tracker . A
31 | test-case that demonstrates the issue is usually required. Instructions on providing a test-case
32 | can be found here .
33 |
34 | Licenses
35 |
36 | This software is distributed under the terms of the Free Software Foundation Lesser GNU Public License (LGPL), version 2.1 (see lgpl.txt).
37 |
38 | Credits
39 |
40 | Many thanks to the following individuals, organisations and projects whose work is so important to the success
41 | of NHibernate (in no particular order):
42 |
43 |
--------------------------------------------------------------------------------
/Packages/NHibernate.3.3.3.4001/NHibernate.releasenotes.txt:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sharparchitecture/Sharp-Architecture-Cookbook/66b2f503ff765558b3a2e76b10a7ad1e2ba413f3/Packages/NHibernate.3.3.3.4001/NHibernate.releasenotes.txt
--------------------------------------------------------------------------------
/Packages/NHibernate.3.3.3.4001/lib/Net35/NHibernate.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sharparchitecture/Sharp-Architecture-Cookbook/66b2f503ff765558b3a2e76b10a7ad1e2ba413f3/Packages/NHibernate.3.3.3.4001/lib/Net35/NHibernate.dll
--------------------------------------------------------------------------------
/Packages/Newtonsoft.Json.5.0.8/Newtonsoft.Json.5.0.8.nupkg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sharparchitecture/Sharp-Architecture-Cookbook/66b2f503ff765558b3a2e76b10a7ad1e2ba413f3/Packages/Newtonsoft.Json.5.0.8/Newtonsoft.Json.5.0.8.nupkg
--------------------------------------------------------------------------------
/Packages/Newtonsoft.Json.5.0.8/Newtonsoft.Json.5.0.8.nuspec:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | Newtonsoft.Json
5 | 5.0.8
6 | Json.NET
7 | James Newton-King
8 | James Newton-King
9 | https://raw.github.com/JamesNK/Newtonsoft.Json/master/LICENSE.md
10 | http://james.newtonking.com/json
11 | false
12 | Json.NET is a popular high-performance JSON framework for .NET
13 | en-US
14 | json
15 |
16 |
--------------------------------------------------------------------------------
/Packages/Newtonsoft.Json.5.0.8/lib/net20/Newtonsoft.Json.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sharparchitecture/Sharp-Architecture-Cookbook/66b2f503ff765558b3a2e76b10a7ad1e2ba413f3/Packages/Newtonsoft.Json.5.0.8/lib/net20/Newtonsoft.Json.dll
--------------------------------------------------------------------------------
/Packages/Newtonsoft.Json.5.0.8/lib/net35/Newtonsoft.Json.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sharparchitecture/Sharp-Architecture-Cookbook/66b2f503ff765558b3a2e76b10a7ad1e2ba413f3/Packages/Newtonsoft.Json.5.0.8/lib/net35/Newtonsoft.Json.dll
--------------------------------------------------------------------------------
/Packages/Newtonsoft.Json.5.0.8/lib/net40/Newtonsoft.Json.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sharparchitecture/Sharp-Architecture-Cookbook/66b2f503ff765558b3a2e76b10a7ad1e2ba413f3/Packages/Newtonsoft.Json.5.0.8/lib/net40/Newtonsoft.Json.dll
--------------------------------------------------------------------------------
/Packages/Newtonsoft.Json.5.0.8/lib/net45/Newtonsoft.Json.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sharparchitecture/Sharp-Architecture-Cookbook/66b2f503ff765558b3a2e76b10a7ad1e2ba413f3/Packages/Newtonsoft.Json.5.0.8/lib/net45/Newtonsoft.Json.dll
--------------------------------------------------------------------------------
/Packages/Newtonsoft.Json.5.0.8/lib/netcore45/Newtonsoft.Json.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sharparchitecture/Sharp-Architecture-Cookbook/66b2f503ff765558b3a2e76b10a7ad1e2ba413f3/Packages/Newtonsoft.Json.5.0.8/lib/netcore45/Newtonsoft.Json.dll
--------------------------------------------------------------------------------
/Packages/Newtonsoft.Json.5.0.8/lib/portable-net40+sl4+wp7+win8/Newtonsoft.Json.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sharparchitecture/Sharp-Architecture-Cookbook/66b2f503ff765558b3a2e76b10a7ad1e2ba413f3/Packages/Newtonsoft.Json.5.0.8/lib/portable-net40+sl4+wp7+win8/Newtonsoft.Json.dll
--------------------------------------------------------------------------------
/Packages/Newtonsoft.Json.5.0.8/lib/portable-net45+wp80+win8/Newtonsoft.Json.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sharparchitecture/Sharp-Architecture-Cookbook/66b2f503ff765558b3a2e76b10a7ad1e2ba413f3/Packages/Newtonsoft.Json.5.0.8/lib/portable-net45+wp80+win8/Newtonsoft.Json.dll
--------------------------------------------------------------------------------
/Packages/Newtonsoft.Json.5.0.8/tools/install.ps1:
--------------------------------------------------------------------------------
1 | param($installPath, $toolsPath, $package, $project)
2 |
3 | # open json.net splash page on package install
4 | # don't open if json.net is installed as a dependency
5 |
6 | try
7 | {
8 | $url = "http://james.newtonking.com/json"
9 | $dte2 = Get-Interface $dte ([EnvDTE80.DTE2])
10 |
11 | if ($dte2.ActiveWindow.Caption -eq "Package Manager Console")
12 | {
13 | # user is installing from VS NuGet console
14 | # get reference to the window, the console host and the input history
15 | # show webpage if "install-package newtonsoft.json" was last input
16 |
17 | $consoleWindow = $(Get-VSComponentModel).GetService([NuGetConsole.IPowerConsoleWindow])
18 |
19 | $props = $consoleWindow.GetType().GetProperties([System.Reflection.BindingFlags]::Instance -bor `
20 | [System.Reflection.BindingFlags]::NonPublic)
21 |
22 | $prop = $props | ? { $_.Name -eq "ActiveHostInfo" } | select -first 1
23 | if ($prop -eq $null) { return }
24 |
25 | $hostInfo = $prop.GetValue($consoleWindow)
26 | if ($hostInfo -eq $null) { return }
27 |
28 | $history = $hostInfo.WpfConsole.InputHistory.History
29 |
30 | $lastCommand = $history | select -last 1
31 |
32 | if ($lastCommand)
33 | {
34 | $lastCommand = $lastCommand.Trim().ToLower()
35 | if ($lastCommand.StartsWith("install-package") -and $lastCommand.Contains("newtonsoft.json"))
36 | {
37 | $dte2.ItemOperations.Navigate($url) | Out-Null
38 | }
39 | }
40 | }
41 | else
42 | {
43 | # user is installing from VS NuGet dialog
44 | # get reference to the window, then smart output console provider
45 | # show webpage if messages in buffered console contains "installing...newtonsoft.json" in last operation
46 |
47 | $instanceField = [NuGet.Dialog.PackageManagerWindow].GetField("CurrentInstance", [System.Reflection.BindingFlags]::Static -bor `
48 | [System.Reflection.BindingFlags]::NonPublic)
49 | $consoleField = [NuGet.Dialog.PackageManagerWindow].GetField("_smartOutputConsoleProvider", [System.Reflection.BindingFlags]::Instance -bor `
50 | [System.Reflection.BindingFlags]::NonPublic)
51 | if ($instanceField -eq $null -or $consoleField -eq $null) { return }
52 |
53 | $instance = $instanceField.GetValue($null)
54 | if ($instance -eq $null) { return }
55 |
56 | $consoleProvider = $consoleField.GetValue($instance)
57 | if ($consoleProvider -eq $null) { return }
58 |
59 | $console = $consoleProvider.CreateOutputConsole($false)
60 |
61 | $messagesField = $console.GetType().GetField("_messages", [System.Reflection.BindingFlags]::Instance -bor `
62 | [System.Reflection.BindingFlags]::NonPublic)
63 | if ($messagesField -eq $null) { return }
64 |
65 | $messages = $messagesField.GetValue($console)
66 | if ($messages -eq $null) { return }
67 |
68 | $operations = $messages -split "=============================="
69 |
70 | $lastOperation = $operations | select -last 1
71 |
72 | if ($lastOperation)
73 | {
74 | $lastOperation = $lastOperation.ToLower()
75 |
76 | $lines = $lastOperation -split "`r`n"
77 |
78 | $installMatch = $lines | ? { $_.StartsWith("------- installing...newtonsoft.json ") } | select -first 1
79 |
80 | if ($installMatch)
81 | {
82 | $dte2.ItemOperations.Navigate($url) | Out-Null
83 | }
84 | }
85 | }
86 | }
87 | catch
88 | {
89 | # stop potential errors from bubbling up
90 | # worst case the splash page won't open
91 | }
92 |
93 | # yolo
--------------------------------------------------------------------------------
/Packages/RhinoMocks.3.6.1/RhinoMocks.3.6.1.nupkg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sharparchitecture/Sharp-Architecture-Cookbook/66b2f503ff765558b3a2e76b10a7ad1e2ba413f3/Packages/RhinoMocks.3.6.1/RhinoMocks.3.6.1.nupkg
--------------------------------------------------------------------------------
/Packages/RhinoMocks.3.6.1/RhinoMocks.3.6.1.nuspec:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | RhinoMocks
5 | 3.6.1
6 | RhinoMocks
7 | ayende
8 | ayende
9 | http://hibernatingrhinos.com/open-source/rhino-mocks
10 | http://hibernatingrhinos.com/open-source/rhino-mocks
11 | false
12 | Rhino Mocks is using Castle Dynamic Proxy (http://www.castleproject.org/dynamicproxy/index.html) to handle proxying the types it needs to mock.
13 | The Dynamic Proxy project has been invaluable resource and made creating Rhino Mocks possible.
14 | Rhino Mocks is using Castle Dynamic Proxy (http://www.castleproject.org/dynamicproxy/index.html) to handle proxying the types it needs to mock.
15 | The Dynamic Proxy project has been invaluable resource a
16 | tdd mocking mocks unittest unittesting
17 |
18 |
--------------------------------------------------------------------------------
/Packages/RhinoMocks.3.6.1/lib/net/Rhino.Mocks.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sharparchitecture/Sharp-Architecture-Cookbook/66b2f503ff765558b3a2e76b10a7ad1e2ba413f3/Packages/RhinoMocks.3.6.1/lib/net/Rhino.Mocks.dll
--------------------------------------------------------------------------------
/Packages/SharpArch.Domain.2.0.0.0/lib/NET40/SharpArch.Domain.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sharparchitecture/Sharp-Architecture-Cookbook/66b2f503ff765558b3a2e76b10a7ad1e2ba413f3/Packages/SharpArch.Domain.2.0.0.0/lib/NET40/SharpArch.Domain.dll
--------------------------------------------------------------------------------
/Packages/SharpArch.Domain.2.0.0.0/lib/NET40/SharpArch.Domain.pdb:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sharparchitecture/Sharp-Architecture-Cookbook/66b2f503ff765558b3a2e76b10a7ad1e2ba413f3/Packages/SharpArch.Domain.2.0.0.0/lib/NET40/SharpArch.Domain.pdb
--------------------------------------------------------------------------------
/Packages/SharpArch.Domain.2.1.2/SharpArch.Domain.2.1.2.nupkg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sharparchitecture/Sharp-Architecture-Cookbook/66b2f503ff765558b3a2e76b10a7ad1e2ba413f3/Packages/SharpArch.Domain.2.1.2/SharpArch.Domain.2.1.2.nupkg
--------------------------------------------------------------------------------
/Packages/SharpArch.Domain.2.1.2/SharpArch.Domain.2.1.2.nuspec:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | SharpArch.Domain
5 | 2.1.2
6 | Sharp Architecture Dev Team
7 | Sharp Architecture Dev Team
8 | https://github.com/sharparchitecture/Sharp-Architecture/blob/master/License.txt
9 | http://www.sharparchitecture.net/
10 | https://github.com/sharparchitecture/Sharp-Architecture/raw/master/Artefacts/Documentation/Logo_100x100.png
11 | false
12 | Provides the core interfaces and classes needed by a Sharp Architecture application. It is persitance ignorant and would be used with other packages that provide persistance support.
13 | Architectural foundation for building maintainable applications with Domain Driven Design patterns and practices
14 | en-US
15 |
16 |
17 |
18 |
19 |
20 |
21 |
22 |
23 |
--------------------------------------------------------------------------------
/Packages/SharpArch.Domain.2.1.2/lib/NET40/SharpArch.Domain.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sharparchitecture/Sharp-Architecture-Cookbook/66b2f503ff765558b3a2e76b10a7ad1e2ba413f3/Packages/SharpArch.Domain.2.1.2/lib/NET40/SharpArch.Domain.dll
--------------------------------------------------------------------------------
/Packages/SharpArch.Domain.2.1.2/lib/NET40/SharpArch.Domain.pdb:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sharparchitecture/Sharp-Architecture-Cookbook/66b2f503ff765558b3a2e76b10a7ad1e2ba413f3/Packages/SharpArch.Domain.2.1.2/lib/NET40/SharpArch.Domain.pdb
--------------------------------------------------------------------------------
/Packages/SharpArch.NHibernate.2.0.0.0/lib/NET40/SharpArch.NHibernate.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sharparchitecture/Sharp-Architecture-Cookbook/66b2f503ff765558b3a2e76b10a7ad1e2ba413f3/Packages/SharpArch.NHibernate.2.0.0.0/lib/NET40/SharpArch.NHibernate.dll
--------------------------------------------------------------------------------
/Packages/SharpArch.NHibernate.2.0.0.0/lib/NET40/SharpArch.NHibernate.pdb:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sharparchitecture/Sharp-Architecture-Cookbook/66b2f503ff765558b3a2e76b10a7ad1e2ba413f3/Packages/SharpArch.NHibernate.2.0.0.0/lib/NET40/SharpArch.NHibernate.pdb
--------------------------------------------------------------------------------
/Packages/SharpArch.NHibernate.2.1.2/SharpArch.NHibernate.2.1.2.nupkg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sharparchitecture/Sharp-Architecture-Cookbook/66b2f503ff765558b3a2e76b10a7ad1e2ba413f3/Packages/SharpArch.NHibernate.2.1.2/SharpArch.NHibernate.2.1.2.nupkg
--------------------------------------------------------------------------------
/Packages/SharpArch.NHibernate.2.1.2/SharpArch.NHibernate.2.1.2.nuspec:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | SharpArch.NHibernate
5 | 2.1.2
6 | Sharp Architecture Dev Team
7 | Sharp Architecture Dev Team
8 | https://github.com/sharparchitecture/Sharp-Architecture/blob/master/License.txt
9 | http://www.sharparchitecture.net/
10 | https://github.com/sharparchitecture/Sharp-Architecture/raw/master/Artefacts/Documentation/Logo_100x100.png
11 | false
12 | Provides NHibernate persistance support for a Sharp Architecture application, providing NHibernate session managment and initialisation, MVC Transaction attributes and implementations of core SharpArch data access interfaces.
13 | Architectural foundation for building maintainable applications with Domain Driven Design patterns and practices
14 | en-US
15 |
16 |
17 |
18 |
19 |
20 |
--------------------------------------------------------------------------------
/Packages/SharpArch.NHibernate.2.1.2/lib/NET40/SharpArch.NHibernate.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sharparchitecture/Sharp-Architecture-Cookbook/66b2f503ff765558b3a2e76b10a7ad1e2ba413f3/Packages/SharpArch.NHibernate.2.1.2/lib/NET40/SharpArch.NHibernate.dll
--------------------------------------------------------------------------------
/Packages/SharpArch.NHibernate.2.1.2/lib/NET40/SharpArch.NHibernate.pdb:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sharparchitecture/Sharp-Architecture-Cookbook/66b2f503ff765558b3a2e76b10a7ad1e2ba413f3/Packages/SharpArch.NHibernate.2.1.2/lib/NET40/SharpArch.NHibernate.pdb
--------------------------------------------------------------------------------
/Packages/SharpArch.Web.Mvc.Castle.2.1.2/SharpArch.Web.Mvc.Castle.2.1.2.nupkg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sharparchitecture/Sharp-Architecture-Cookbook/66b2f503ff765558b3a2e76b10a7ad1e2ba413f3/Packages/SharpArch.Web.Mvc.Castle.2.1.2/SharpArch.Web.Mvc.Castle.2.1.2.nupkg
--------------------------------------------------------------------------------
/Packages/SharpArch.Web.Mvc.Castle.2.1.2/SharpArch.Web.Mvc.Castle.2.1.2.nuspec:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | SharpArch.Web.Mvc.Castle
5 | 2.1.2
6 | Sharp Architecture Dev Team
7 | Sharp Architecture Dev Team
8 | https://github.com/sharparchitecture/Sharp-Architecture/blob/master/License.txt
9 | http://www.sharparchitecture.net/
10 | https://github.com/sharparchitecture/Sharp-Architecture/raw/master/Artefacts/Documentation/Logo_100x100.png
11 | false
12 | Provides MVC ModelBinder using Sharp Architecture's IRepository implementation registered with the IoC Container, a Castle Windsor MVC controller factory and Json.Net ActionResult
13 | Architectural foundation for building maintainable applications with Domain Driven Design patterns and practices
14 | en-US
15 |
16 |
17 |
18 |
19 |
20 |
21 |
22 |
23 |
24 |
25 |
26 |
27 |
28 |
29 |
30 |
31 |
--------------------------------------------------------------------------------
/Packages/SharpArch.Web.Mvc.Castle.2.1.2/lib/NET40/SharpArch.Web.Mvc.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sharparchitecture/Sharp-Architecture-Cookbook/66b2f503ff765558b3a2e76b10a7ad1e2ba413f3/Packages/SharpArch.Web.Mvc.Castle.2.1.2/lib/NET40/SharpArch.Web.Mvc.dll
--------------------------------------------------------------------------------
/Packages/SharpArch.Web.Mvc.Castle.2.1.2/lib/NET40/SharpArch.Web.Mvc.pdb:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sharparchitecture/Sharp-Architecture-Cookbook/66b2f503ff765558b3a2e76b10a7ad1e2ba413f3/Packages/SharpArch.Web.Mvc.Castle.2.1.2/lib/NET40/SharpArch.Web.Mvc.pdb
--------------------------------------------------------------------------------
/Packages/inflector_extension.0.0.8/inflector_extension.0.0.8.nupkg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sharparchitecture/Sharp-Architecture-Cookbook/66b2f503ff765558b3a2e76b10a7ad1e2ba413f3/Packages/inflector_extension.0.0.8/inflector_extension.0.0.8.nupkg
--------------------------------------------------------------------------------
/Packages/inflector_extension.0.0.8/inflector_extension.0.0.8.nuspec:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | inflector_extension
5 | 0.0.8
6 | Brendan Erwin
7 | Brendan Erwin
8 | https://github.com/littlebits/inflector_extension
9 | https://github.com/littlebits/inflector_extension
10 | false
11 | Extension Methods for Inflector in C#
12 | littlebits inflector extension inflection pluralize titleize humanize
13 |
14 |
--------------------------------------------------------------------------------
/Packages/inflector_extension.0.0.8/lib/Net35/inflector_extension.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sharparchitecture/Sharp-Architecture-Cookbook/66b2f503ff765558b3a2e76b10a7ad1e2ba413f3/Packages/inflector_extension.0.0.8/lib/Net35/inflector_extension.dll
--------------------------------------------------------------------------------
/Packages/inflector_extension.0.0.8/lib/Net40/inflector_extension.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sharparchitecture/Sharp-Architecture-Cookbook/66b2f503ff765558b3a2e76b10a7ad1e2ba413f3/Packages/inflector_extension.0.0.8/lib/Net40/inflector_extension.dll
--------------------------------------------------------------------------------
/Packages/log4net.1.2.10/lib/1.0/log4net.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sharparchitecture/Sharp-Architecture-Cookbook/66b2f503ff765558b3a2e76b10a7ad1e2ba413f3/Packages/log4net.1.2.10/lib/1.0/log4net.dll
--------------------------------------------------------------------------------
/Packages/log4net.1.2.10/lib/1.1/log4net.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sharparchitecture/Sharp-Architecture-Cookbook/66b2f503ff765558b3a2e76b10a7ad1e2ba413f3/Packages/log4net.1.2.10/lib/1.1/log4net.dll
--------------------------------------------------------------------------------
/Packages/log4net.1.2.10/lib/2.0/log4net.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sharparchitecture/Sharp-Architecture-Cookbook/66b2f503ff765558b3a2e76b10a7ad1e2ba413f3/Packages/log4net.1.2.10/lib/2.0/log4net.dll
--------------------------------------------------------------------------------
/Packages/log4net.1.2.10/log4net.1.2.10.nupkg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sharparchitecture/Sharp-Architecture-Cookbook/66b2f503ff765558b3a2e76b10a7ad1e2ba413f3/Packages/log4net.1.2.10/log4net.1.2.10.nupkg
--------------------------------------------------------------------------------
/Packages/repositories.config:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
--------------------------------------------------------------------------------
/README:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sharparchitecture/Sharp-Architecture-Cookbook/66b2f503ff765558b3a2e76b10a7ad1e2ba413f3/README
--------------------------------------------------------------------------------
/ReferencedAssemblies/ASP.NET MVC/Microsoft.Web.Mvc.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sharparchitecture/Sharp-Architecture-Cookbook/66b2f503ff765558b3a2e76b10a7ad1e2ba413f3/ReferencedAssemblies/ASP.NET MVC/Microsoft.Web.Mvc.dll
--------------------------------------------------------------------------------
/ReferencedAssemblies/ASP.NET MVC/System.Web.Abstractions.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sharparchitecture/Sharp-Architecture-Cookbook/66b2f503ff765558b3a2e76b10a7ad1e2ba413f3/ReferencedAssemblies/ASP.NET MVC/System.Web.Abstractions.dll
--------------------------------------------------------------------------------
/ReferencedAssemblies/ASP.NET MVC/System.Web.Helpers.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sharparchitecture/Sharp-Architecture-Cookbook/66b2f503ff765558b3a2e76b10a7ad1e2ba413f3/ReferencedAssemblies/ASP.NET MVC/System.Web.Helpers.dll
--------------------------------------------------------------------------------
/ReferencedAssemblies/ASP.NET MVC/System.Web.Mvc.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sharparchitecture/Sharp-Architecture-Cookbook/66b2f503ff765558b3a2e76b10a7ad1e2ba413f3/ReferencedAssemblies/ASP.NET MVC/System.Web.Mvc.dll
--------------------------------------------------------------------------------
/ReferencedAssemblies/ASP.NET MVC/System.Web.Razor.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sharparchitecture/Sharp-Architecture-Cookbook/66b2f503ff765558b3a2e76b10a7ad1e2ba413f3/ReferencedAssemblies/ASP.NET MVC/System.Web.Razor.dll
--------------------------------------------------------------------------------
/ReferencedAssemblies/ASP.NET MVC/System.Web.Routing.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sharparchitecture/Sharp-Architecture-Cookbook/66b2f503ff765558b3a2e76b10a7ad1e2ba413f3/ReferencedAssemblies/ASP.NET MVC/System.Web.Routing.dll
--------------------------------------------------------------------------------
/ReferencedAssemblies/ASP.NET MVC/System.Web.WebPages.Razor.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sharparchitecture/Sharp-Architecture-Cookbook/66b2f503ff765558b3a2e76b10a7ad1e2ba413f3/ReferencedAssemblies/ASP.NET MVC/System.Web.WebPages.Razor.dll
--------------------------------------------------------------------------------
/ReferencedAssemblies/ASP.NET MVC/System.Web.WebPages.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sharparchitecture/Sharp-Architecture-Cookbook/66b2f503ff765558b3a2e76b10a7ad1e2ba413f3/ReferencedAssemblies/ASP.NET MVC/System.Web.WebPages.dll
--------------------------------------------------------------------------------
/ReferencedAssemblies/Machine.Specifications/CommandLine.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sharparchitecture/Sharp-Architecture-Cookbook/66b2f503ff765558b3a2e76b10a7ad1e2ba413f3/ReferencedAssemblies/Machine.Specifications/CommandLine.dll
--------------------------------------------------------------------------------
/ReferencedAssemblies/Machine.Specifications/InstallResharperRunner.4.1.bat:
--------------------------------------------------------------------------------
1 | mkdir "%APPDATA%\JetBrains\ReSharper\v4.1\vs9.0\Plugins" 2> NUL
2 | copy /y Machine.Specifications.dll "%APPDATA%\JetBrains\ReSharper\v4.1\vs9.0\Plugins"
3 | copy /y Machine.Specifications.pdb "%APPDATA%\JetBrains\ReSharper\v4.1\vs9.0\Plugins" > NUL
4 | copy /y Machine.Specifications.ReSharperRunner.4.1.dll "%APPDATA%\JetBrains\ReSharper\v4.1\vs9.0\Plugins"
5 | copy /y Machine.Specifications.ReSharperRunner.4.1.pdb "%APPDATA%\JetBrains\ReSharper\v4.1\vs9.0\Plugins" > NUL
--------------------------------------------------------------------------------
/ReferencedAssemblies/Machine.Specifications/InstallResharperRunner.4.5.bat:
--------------------------------------------------------------------------------
1 | mkdir "%APPDATA%\JetBrains\ReSharper\v4.5\vs9.0\Plugins" 2> NUL
2 | copy /y Machine.Specifications.dll "%APPDATA%\JetBrains\ReSharper\v4.5\vs9.0\Plugins"
3 | copy /y Machine.Specifications.pdb "%APPDATA%\JetBrains\ReSharper\v4.5\vs9.0\Plugins" > NUL
4 | copy /y Machine.Specifications.ReSharperRunner.4.5.dll "%APPDATA%\JetBrains\ReSharper\v4.5\vs9.0\Plugins"
5 | copy /y Machine.Specifications.ReSharperRunner.4.5.pdb "%APPDATA%\JetBrains\ReSharper\v4.5\vs9.0\Plugins" > NUL
--------------------------------------------------------------------------------
/ReferencedAssemblies/Machine.Specifications/InstallResharperRunner.5.0 - VS2008.bat:
--------------------------------------------------------------------------------
1 | mkdir "%APPDATA%\JetBrains\ReSharper\v5.0\vs9.0\Plugins" 2> NUL
2 | copy /y Machine.Specifications.dll "%APPDATA%\JetBrains\ReSharper\v5.0\vs9.0\Plugins"
3 | copy /y Machine.Specifications.pdb "%APPDATA%\JetBrains\ReSharper\v5.0\vs9.0\Plugins" > NUL
4 | copy /y Machine.Specifications.ReSharperRunner.5.0.dll "%APPDATA%\JetBrains\ReSharper\v5.0\vs9.0\Plugins"
5 | copy /y Machine.Specifications.ReSharperRunner.5.0.pdb "%APPDATA%\JetBrains\ReSharper\v5.0\vs9.0\Plugins" > NUL
--------------------------------------------------------------------------------
/ReferencedAssemblies/Machine.Specifications/InstallResharperRunner.5.0 - VS2010.bat:
--------------------------------------------------------------------------------
1 | mkdir "%APPDATA%\JetBrains\ReSharper\v5.0\vs10.0\Plugins" 2> NUL
2 | copy /y Machine.Specifications.dll "%APPDATA%\JetBrains\ReSharper\v5.0\vs10.0\Plugins"
3 | copy /y Machine.Specifications.pdb "%APPDATA%\JetBrains\ReSharper\v5.0\vs10.0\Plugins" > NUL
4 | copy /y Machine.Specifications.ReSharperRunner.5.0.dll "%APPDATA%\JetBrains\ReSharper\v5.0\vs10.0\Plugins"
5 | copy /y Machine.Specifications.ReSharperRunner.5.0.pdb "%APPDATA%\JetBrains\ReSharper\v5.0\vs10.0\Plugins" > NUL
--------------------------------------------------------------------------------
/ReferencedAssemblies/Machine.Specifications/InstallResharperRunner.5.1 - VS2008.bat:
--------------------------------------------------------------------------------
1 | mkdir "%APPDATA%\JetBrains\ReSharper\v5.1\vs9.0\Plugins" 2> NUL
2 | copy /y Machine.Specifications.dll "%APPDATA%\JetBrains\ReSharper\v5.1\vs9.0\Plugins"
3 | copy /y Machine.Specifications.pdb "%APPDATA%\JetBrains\ReSharper\v5.1\vs9.0\Plugins" > NUL
4 | copy /y Machine.Specifications.ReSharperRunner.5.1.dll "%APPDATA%\JetBrains\ReSharper\v5.1\vs9.0\Plugins"
5 | copy /y Machine.Specifications.ReSharperRunner.5.1.pdb "%APPDATA%\JetBrains\ReSharper\v5.1\vs9.0\Plugins" > NUL
--------------------------------------------------------------------------------
/ReferencedAssemblies/Machine.Specifications/InstallResharperRunner.5.1 - VS2010.bat:
--------------------------------------------------------------------------------
1 | mkdir "%APPDATA%\JetBrains\ReSharper\v5.1\vs10.0\Plugins" 2> NUL
2 | copy /y Machine.Specifications.dll "%APPDATA%\JetBrains\ReSharper\v5.1\vs10.0\Plugins"
3 | copy /y Machine.Specifications.pdb "%APPDATA%\JetBrains\ReSharper\v5.1\vs10.0\Plugins" > NUL
4 | copy /y Machine.Specifications.ReSharperRunner.5.1.dll "%APPDATA%\JetBrains\ReSharper\v5.1\vs10.0\Plugins"
5 | copy /y Machine.Specifications.ReSharperRunner.5.1.pdb "%APPDATA%\JetBrains\ReSharper\v5.1\vs10.0\Plugins" > NUL
--------------------------------------------------------------------------------
/ReferencedAssemblies/Machine.Specifications/InstallResharperRunner.6.0 - VS2008.bat:
--------------------------------------------------------------------------------
1 | mkdir "%APPDATA%\JetBrains\ReSharper\v6.0\vs9.0\Plugins" 2> NUL
2 | copy /y Machine.Specifications.dll "%APPDATA%\JetBrains\ReSharper\v6.0\vs9.0\Plugins"
3 | copy /y Machine.Specifications.pdb "%APPDATA%\JetBrains\ReSharper\v6.0\vs9.0\Plugins" > NUL
4 | copy /y Machine.Specifications.ReSharperRunner.6.0.dll "%APPDATA%\JetBrains\ReSharper\v6.0\vs9.0\Plugins"
5 | copy /y Machine.Specifications.ReSharperRunner.6.0.pdb "%APPDATA%\JetBrains\ReSharper\v6.0\vs9.0\Plugins" > NUL
--------------------------------------------------------------------------------
/ReferencedAssemblies/Machine.Specifications/InstallResharperRunner.6.0 - VS2010.bat:
--------------------------------------------------------------------------------
1 | mkdir "%APPDATA%\JetBrains\ReSharper\v6.0\vs10.0\Plugins" 2> NUL
2 | copy /y Machine.Specifications.dll "%APPDATA%\JetBrains\ReSharper\v6.0\vs10.0\Plugins"
3 | copy /y Machine.Specifications.pdb "%APPDATA%\JetBrains\ReSharper\v6.0\vs10.0\Plugins" > NUL
4 | copy /y Machine.Specifications.ReSharperRunner.6.0.dll "%APPDATA%\JetBrains\ReSharper\v6.0\vs10.0\Plugins"
5 | copy /y Machine.Specifications.ReSharperRunner.6.0.pdb "%APPDATA%\JetBrains\ReSharper\v6.0\vs10.0\Plugins" > NUL
--------------------------------------------------------------------------------
/ReferencedAssemblies/Machine.Specifications/InstallTDNetRunner.bat:
--------------------------------------------------------------------------------
1 | @echo off & if not "%ECHO%"=="" echo %ECHO%
2 |
3 | setlocal
4 | set LOCALDIR=%~dp0
5 |
6 | echo Windows Registry Editor Version 5.00 > MSpecTDNet.reg
7 | echo [HKEY_CURRENT_USER\Software\MutantDesign\TestDriven.NET\TestRunners\MSpec] >> MSpecTDNet.reg
8 | echo "Application"="" >> MSpecTDNet.reg
9 | echo "AssemblyPath"="%LOCALDIR:\=\\%Machine.Specifications.TDNetRunner.dll" >> MSpecTDNet.reg
10 | echo "TargetFrameworkAssemblyName"="Machine.Specifications" >> MSpecTDNet.reg
11 | echo "TypeName"="Machine.Specifications.TDNetRunner.SpecificationRunner" >> MSpecTDNet.reg
12 | echo @="5" >> MSpecTDNet.reg
13 |
14 | regedit MSpecTDNet.reg
15 |
16 | del MSpecTDNet.reg
17 |
--------------------------------------------------------------------------------
/ReferencedAssemblies/Machine.Specifications/InstallTDNetRunnerSilent.bat:
--------------------------------------------------------------------------------
1 | @echo off & if not "%ECHO%"=="" echo %ECHO%
2 |
3 | setlocal
4 | set LOCALDIR=%~dp0
5 |
6 | echo Windows Registry Editor Version 5.00 > MSpecTDNet.reg
7 | echo [HKEY_CURRENT_USER\Software\MutantDesign\TestDriven.NET\TestRunners\MSpec] >> MSpecTDNet.reg
8 | echo "Application"="" >> MSpecTDNet.reg
9 | echo "AssemblyPath"="%LOCALDIR:\=\\%Machine.Specifications.TDNetRunner.dll" >> MSpecTDNet.reg
10 | echo "TargetFrameworkAssemblyName"="Machine.Specifications" >> MSpecTDNet.reg
11 | echo "TypeName"="Machine.Specifications.TDNetRunner.SpecificationRunner" >> MSpecTDNet.reg
12 | echo @="5" >> MSpecTDNet.reg
13 |
14 | regedit /s MSpecTDNet.reg
15 |
16 | del MSpecTDNet.reg
17 |
--------------------------------------------------------------------------------
/ReferencedAssemblies/Machine.Specifications/License.txt:
--------------------------------------------------------------------------------
1 | Copyright (c) 2008 Machine Project
2 | Portions Copyright (c) 2008 Jacob Lewallen, Aaron Jensen
3 |
4 | Permission is hereby granted, free of charge, to any person obtaining a copy
5 | of this software and associated documentation files (the "Software"), to deal
6 | in the Software without restriction, including without limitation the rights
7 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
8 | copies of the Software, and to permit persons to whom the Software is
9 | furnished to do so, subject to the following conditions:
10 |
11 | The above copyright notice and this permission notice shall be included in
12 | all copies or substantial portions of the Software.
13 |
14 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
15 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
16 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
17 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
18 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
19 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
20 | THE SOFTWARE.
21 |
22 | *****************************
23 | Some parts licensed under MS-PL
24 | *****************************
25 |
26 | This license governs use of the accompanying software. If you use the software, you accept this license. If you do not accept the license, do not use the software.
27 |
28 | 1. Definitions
29 |
30 | The terms "reproduce," "reproduction," "derivative works," and "distribution" have the same meaning here as under U.S. copyright law.
31 |
32 | A "contribution" is the original software, or any additions or changes to the software.
33 |
34 | A "contributor" is any person that distributes its contribution under this license.
35 |
36 | "Licensed patents" are a contributor's patent claims that read directly on its contribution.
37 |
38 | 2. Grant of Rights
39 |
40 | (A) Copyright Grant- Subject to the terms of this license, including the license conditions and limitations in section 3, each contributor grants you a non-exclusive, worldwide, royalty-free copyright license to reproduce its contribution, prepare derivative works of its contribution, and distribute its contribution or any derivative works that you create.
41 |
42 | (B) Patent Grant- Subject to the terms of this license, including the license conditions and limitations in section 3, each contributor grants you a non-exclusive, worldwide, royalty-free license under its licensed patents to make, have made, use, sell, offer for sale, import, and/or otherwise dispose of its contribution in the software or derivative works of the contribution in the software.
43 |
44 | 3. Conditions and Limitations
45 |
46 | (A) No Trademark License- This license does not grant you rights to use any contributors' name, logo, or trademarks.
47 |
48 | (B) If you bring a patent claim against any contributor over patents that you claim are infringed by the software, your patent license from such contributor to the software ends automatically.
49 |
50 | (C) If you distribute any portion of the software, you must retain all copyright, patent, trademark, and attribution notices that are present in the software.
51 |
52 | (D) If you distribute any portion of the software in source code form, you may do so only under this license by including a complete copy of this license with your distribution. If you distribute any portion of the software in compiled or object code form, you may only do so under a license that complies with this license.
53 |
54 | (E) The software is licensed "as-is." You bear the risk of using it. The contributors give no express warranties, guarantees or conditions. You may have additional consumer rights under your local laws which this license cannot change. To the extent permitted under your local laws, the contributors exclude the implied warranties of merchantability, fitness for a particular purpose and non-infringement.
--------------------------------------------------------------------------------
/ReferencedAssemblies/Machine.Specifications/Machine.Specifications.AutoMocking.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sharparchitecture/Sharp-Architecture-Cookbook/66b2f503ff765558b3a2e76b10a7ad1e2ba413f3/ReferencedAssemblies/Machine.Specifications/Machine.Specifications.AutoMocking.dll
--------------------------------------------------------------------------------
/ReferencedAssemblies/Machine.Specifications/Machine.Specifications.GallioAdapter.3.1.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sharparchitecture/Sharp-Architecture-Cookbook/66b2f503ff765558b3a2e76b10a7ad1e2ba413f3/ReferencedAssemblies/Machine.Specifications/Machine.Specifications.GallioAdapter.3.1.dll
--------------------------------------------------------------------------------
/ReferencedAssemblies/Machine.Specifications/Machine.Specifications.GallioAdapter.plugin:
--------------------------------------------------------------------------------
1 |
2 |
5 |
6 | Machine Specifications Adapter Plugin
7 | 0.4.24.0
8 | Provides support for running MSpec within Gallio. Requires the assemblies from MSpec.
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
18 |
19 |
20 |
21 |
22 |
23 |
26 |
27 |
29 |
30 |
31 |
32 |
35 |
36 | Machine Specifications
37 | Machine.Specifications, Version=0.4.24.0
38 | 0.4.24.0
39 | Assembly
40 |
41 |
42 |
43 |
--------------------------------------------------------------------------------
/ReferencedAssemblies/Machine.Specifications/Machine.Specifications.Mvc.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sharparchitecture/Sharp-Architecture-Cookbook/66b2f503ff765558b3a2e76b10a7ad1e2ba413f3/ReferencedAssemblies/Machine.Specifications/Machine.Specifications.Mvc.dll
--------------------------------------------------------------------------------
/ReferencedAssemblies/Machine.Specifications/Machine.Specifications.ReSharperRunner.4.1.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sharparchitecture/Sharp-Architecture-Cookbook/66b2f503ff765558b3a2e76b10a7ad1e2ba413f3/ReferencedAssemblies/Machine.Specifications/Machine.Specifications.ReSharperRunner.4.1.dll
--------------------------------------------------------------------------------
/ReferencedAssemblies/Machine.Specifications/Machine.Specifications.ReSharperRunner.4.5.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sharparchitecture/Sharp-Architecture-Cookbook/66b2f503ff765558b3a2e76b10a7ad1e2ba413f3/ReferencedAssemblies/Machine.Specifications/Machine.Specifications.ReSharperRunner.4.5.dll
--------------------------------------------------------------------------------
/ReferencedAssemblies/Machine.Specifications/Machine.Specifications.ReSharperRunner.5.0.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sharparchitecture/Sharp-Architecture-Cookbook/66b2f503ff765558b3a2e76b10a7ad1e2ba413f3/ReferencedAssemblies/Machine.Specifications/Machine.Specifications.ReSharperRunner.5.0.dll
--------------------------------------------------------------------------------
/ReferencedAssemblies/Machine.Specifications/Machine.Specifications.ReSharperRunner.5.1.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sharparchitecture/Sharp-Architecture-Cookbook/66b2f503ff765558b3a2e76b10a7ad1e2ba413f3/ReferencedAssemblies/Machine.Specifications/Machine.Specifications.ReSharperRunner.5.1.dll
--------------------------------------------------------------------------------
/ReferencedAssemblies/Machine.Specifications/Machine.Specifications.ReSharperRunner.6.0.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sharparchitecture/Sharp-Architecture-Cookbook/66b2f503ff765558b3a2e76b10a7ad1e2ba413f3/ReferencedAssemblies/Machine.Specifications/Machine.Specifications.ReSharperRunner.6.0.dll
--------------------------------------------------------------------------------
/ReferencedAssemblies/Machine.Specifications/Machine.Specifications.Reporting.Templates.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sharparchitecture/Sharp-Architecture-Cookbook/66b2f503ff765558b3a2e76b10a7ad1e2ba413f3/ReferencedAssemblies/Machine.Specifications/Machine.Specifications.Reporting.Templates.dll
--------------------------------------------------------------------------------
/ReferencedAssemblies/Machine.Specifications/Machine.Specifications.Reporting.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sharparchitecture/Sharp-Architecture-Cookbook/66b2f503ff765558b3a2e76b10a7ad1e2ba413f3/ReferencedAssemblies/Machine.Specifications/Machine.Specifications.Reporting.dll
--------------------------------------------------------------------------------
/ReferencedAssemblies/Machine.Specifications/Machine.Specifications.SeleniumSupport.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sharparchitecture/Sharp-Architecture-Cookbook/66b2f503ff765558b3a2e76b10a7ad1e2ba413f3/ReferencedAssemblies/Machine.Specifications/Machine.Specifications.SeleniumSupport.dll
--------------------------------------------------------------------------------
/ReferencedAssemblies/Machine.Specifications/Machine.Specifications.TDNetRunner.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sharparchitecture/Sharp-Architecture-Cookbook/66b2f503ff765558b3a2e76b10a7ad1e2ba413f3/ReferencedAssemblies/Machine.Specifications/Machine.Specifications.TDNetRunner.dll
--------------------------------------------------------------------------------
/ReferencedAssemblies/Machine.Specifications/Machine.Specifications.WatinSupport.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sharparchitecture/Sharp-Architecture-Cookbook/66b2f503ff765558b3a2e76b10a7ad1e2ba413f3/ReferencedAssemblies/Machine.Specifications/Machine.Specifications.WatinSupport.dll
--------------------------------------------------------------------------------
/ReferencedAssemblies/Machine.Specifications/Machine.Specifications.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sharparchitecture/Sharp-Architecture-Cookbook/66b2f503ff765558b3a2e76b10a7ad1e2ba413f3/ReferencedAssemblies/Machine.Specifications/Machine.Specifications.dll
--------------------------------------------------------------------------------
/ReferencedAssemblies/Machine.Specifications/Machine.Specifications.dll.tdnet:
--------------------------------------------------------------------------------
1 |
2 | Machine.Specifications 0.4.24-f7fb6b5
3 | Machine.Specifications.TDNetRunner.dll
4 | Machine.Specifications.TDNetRunner.SpecificationRunner
5 |
6 |
--------------------------------------------------------------------------------
/ReferencedAssemblies/Machine.Specifications/NUnit.Specifications.AutoMocking.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sharparchitecture/Sharp-Architecture-Cookbook/66b2f503ff765558b3a2e76b10a7ad1e2ba413f3/ReferencedAssemblies/Machine.Specifications/NUnit.Specifications.AutoMocking.dll
--------------------------------------------------------------------------------
/ReferencedAssemblies/Machine.Specifications/Spark.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sharparchitecture/Sharp-Architecture-Cookbook/66b2f503ff765558b3a2e76b10a7ad1e2ba413f3/ReferencedAssemblies/Machine.Specifications/Spark.dll
--------------------------------------------------------------------------------
/ReferencedAssemblies/Machine.Specifications/TestDriven.Framework.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sharparchitecture/Sharp-Architecture-Cookbook/66b2f503ff765558b3a2e76b10a7ad1e2ba413f3/ReferencedAssemblies/Machine.Specifications/TestDriven.Framework.dll
--------------------------------------------------------------------------------
/ReferencedAssemblies/Machine.Specifications/install.ps1:
--------------------------------------------------------------------------------
1 | param($installPath, $toolsPath, $package, $project)
2 | $project.Object.References | Where-Object { $_.Name -eq 'Machine.Specifications.TDNetRunner' } | ForEach-Object { $_.Remove() }
3 |
4 | if ($false -eq $false)
5 | {
6 | Write-Warning "This is the unsigned version of Machine.Specifications. Use 'Install-Package Machine.Specifications-Signed' to install the signed version."
7 | }
--------------------------------------------------------------------------------
/ReferencedAssemblies/Machine.Specifications/mspec-clr4.exe:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sharparchitecture/Sharp-Architecture-Cookbook/66b2f503ff765558b3a2e76b10a7ad1e2ba413f3/ReferencedAssemblies/Machine.Specifications/mspec-clr4.exe
--------------------------------------------------------------------------------
/ReferencedAssemblies/Machine.Specifications/mspec-clr4.exe.config:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
--------------------------------------------------------------------------------
/ReferencedAssemblies/Machine.Specifications/mspec-x86-clr4.exe:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sharparchitecture/Sharp-Architecture-Cookbook/66b2f503ff765558b3a2e76b10a7ad1e2ba413f3/ReferencedAssemblies/Machine.Specifications/mspec-x86-clr4.exe
--------------------------------------------------------------------------------
/ReferencedAssemblies/Machine.Specifications/mspec-x86-clr4.exe.config:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
--------------------------------------------------------------------------------
/ReferencedAssemblies/Machine.Specifications/mspec-x86.exe:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sharparchitecture/Sharp-Architecture-Cookbook/66b2f503ff765558b3a2e76b10a7ad1e2ba413f3/ReferencedAssemblies/Machine.Specifications/mspec-x86.exe
--------------------------------------------------------------------------------
/ReferencedAssemblies/Machine.Specifications/mspec.exe:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sharparchitecture/Sharp-Architecture-Cookbook/66b2f503ff765558b3a2e76b10a7ad1e2ba413f3/ReferencedAssemblies/Machine.Specifications/mspec.exe
--------------------------------------------------------------------------------
/Solutions/Backup/SharpArchCookbook.Web.Mvc/Global.asax.cs:
--------------------------------------------------------------------------------
1 | namespace SharpArchCookbook.Web.Mvc
2 | {
3 | using System;
4 | using System.Reflection;
5 | using System.Web.Mvc;
6 | using System.Web.Routing;
7 |
8 | using Castle.Windsor;
9 |
10 | // SharpArchCookbook.Web.Mvc.CastleWindsor
11 | using CastleWindsor;
12 |
13 | using CommonServiceLocator.WindsorAdapter;
14 |
15 | using Controllers;
16 |
17 | using Infrastructure.NHibernateMaps;
18 |
19 | using log4net.Config;
20 |
21 | using Microsoft.Practices.ServiceLocation;
22 |
23 | using SharpArch.NHibernate;
24 | using SharpArch.NHibernate.Web.Mvc;
25 | using SharpArch.Web.Mvc.Castle;
26 | using SharpArch.Web.Mvc.ModelBinder;
27 |
28 |
29 | ///
30 | /// Represents the MVC Application
31 | ///
32 | ///
33 | /// For instructions on enabling IIS6 or IIS7 classic mode,
34 | /// visit http://go.microsoft.com/?LinkId=9394801
35 | ///
36 | public class MvcApplication : System.Web.HttpApplication
37 | {
38 | private WebSessionStorage webSessionStorage;
39 |
40 | ///
41 | /// Due to issues on IIS7, the NHibernate initialization must occur in Init().
42 | /// But Init() may be invoked more than once; accordingly, we introduce a thread-safe
43 | /// mechanism to ensure it's only initialized once.
44 | /// See http://msdn.microsoft.com/en-us/magazine/cc188793.aspx for explanation details.
45 | ///
46 | public override void Init()
47 | {
48 | base.Init();
49 | this.webSessionStorage = new WebSessionStorage(this);
50 | }
51 |
52 | protected void Application_BeginRequest(object sender, EventArgs e)
53 | {
54 | NHibernateInitializer.Instance().InitializeNHibernateOnce(this.InitialiseNHibernateSessions);
55 | }
56 |
57 | protected void Application_Error(object sender, EventArgs e)
58 | {
59 | // Useful for debugging
60 | Exception ex = this.Server.GetLastError();
61 | var reflectionTypeLoadException = ex as ReflectionTypeLoadException;
62 | }
63 |
64 | protected void Application_Start()
65 | {
66 | XmlConfigurator.Configure();
67 |
68 | ViewEngines.Engines.Clear();
69 |
70 | ViewEngines.Engines.Add(new RazorViewEngine());
71 |
72 | ModelBinders.Binders.DefaultBinder = new SharpModelBinder();
73 |
74 | ModelValidatorProviders.Providers.Add(new ClientDataTypeModelValidatorProvider());
75 |
76 | this.InitializeServiceLocator();
77 |
78 | AreaRegistration.RegisterAllAreas();
79 | RouteRegistrar.RegisterRoutesTo(RouteTable.Routes);
80 | }
81 |
82 | ///
83 | /// Instantiate the container and add all Controllers that derive from
84 | /// WindsorController to the container. Also associate the Controller
85 | /// with the WindsorContainer ControllerFactory.
86 | ///
87 | protected virtual void InitializeServiceLocator()
88 | {
89 | IWindsorContainer container = new WindsorContainer();
90 |
91 | ControllerBuilder.Current.SetControllerFactory(new WindsorControllerFactory(container));
92 |
93 | container.RegisterControllers(typeof(HomeController).Assembly);
94 | ComponentRegistrar.AddComponentsTo(container);
95 |
96 | ServiceLocator.SetLocatorProvider(() => new WindsorServiceLocator(container));
97 | }
98 |
99 | private void InitialiseNHibernateSessions()
100 | {
101 | NHibernateSession.ConfigurationCache = new NHibernateConfigurationFileCache();
102 |
103 | NHibernateSession.Init(
104 | this.webSessionStorage,
105 | new[] { Server.MapPath("~/bin/SharpArchCookbook.Infrastructure.dll") },
106 | new AutoPersistenceModelGenerator().Generate(),
107 | Server.MapPath("~/NHibernate.config"));
108 | }
109 | }
110 | }
--------------------------------------------------------------------------------
/Solutions/Backup/SharpArchCookbook.Web.Mvc/Web.config:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
18 |
19 |
20 |
21 |
22 |
23 |
24 |
25 |
26 |
27 |
28 |
29 |
30 |
31 |
32 |
33 |
34 |
35 |
36 |
37 |
38 |
39 |
40 |
41 |
42 |
43 |
44 |
45 |
46 |
47 |
48 |
49 |
50 |
51 |
52 |
53 |
54 |
55 |
56 |
57 |
58 |
59 |
60 |
61 |
--------------------------------------------------------------------------------
/Solutions/Backup/SharpArchCookbook.Web.Mvc/packages.config:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
18 |
--------------------------------------------------------------------------------
/Solutions/Backup/SharpArchCookbook.sln:
--------------------------------------------------------------------------------
1 | Microsoft Visual Studio Solution File, Format Version 11.00
2 | # Visual Studio 2010
3 | Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Domain", "Domain", "{D2AD5B1A-C8C2-487F-89CA-04900885F946}"
4 | EndProject
5 | Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Infrastructure", "Infrastructure", "{E6A458E6-AF91-4FB7-9224-5FC5E00C3996}"
6 | EndProject
7 | Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Tasks", "Tasks", "{BDC8840A-C964-4EFB-8778-9BC01F516491}"
8 | EndProject
9 | Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Presentation", "Presentation", "{D5E689AA-BE7E-4F5F-AF51-03F71C6C31B2}"
10 | EndProject
11 | Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Specs", "Specs", "{2322D330-1A60-4F79-B553-53DED803A098}"
12 | EndProject
13 | Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "SharpArchCookbook.Domain", "SharpArchCookbook.Domain\SharpArchCookbook.Domain.csproj", "{8DEF56CD-601E-443C-9DCE-C4EC54C0B6A6}"
14 | EndProject
15 | Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "SharpArchCookbook.Infrastructure", "SharpArchCookbook.Infrastructure\SharpArchCookbook.Infrastructure.csproj", "{9544D94B-9B6E-4B61-8A09-88382205BF86}"
16 | EndProject
17 | Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "SharpArchCookbook.Tasks", "SharpArchCookbook.Tasks\SharpArchCookbook.Tasks.csproj", "{C9AAC14B-E695-4508-83B7-ACB8FC5A7284}"
18 | EndProject
19 | Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "MSpecTests.SharpArchCookbook", "MSpecTests.SharpArchCookbook\MSpecTests.SharpArchCookbook.csproj", "{F63E0957-B60B-47A3-96BB-76DC243D0C8A}"
20 | EndProject
21 | Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "SharpArchCookbook.Web.Mvc", "SharpArchCookbook.Web.Mvc\SharpArchCookbook.Web.Mvc.csproj", "{39613BA0-1206-4A4B-A16A-C1F2A22D1267}"
22 | EndProject
23 | Global
24 | GlobalSection(SolutionConfigurationPlatforms) = preSolution
25 | Debug|Any CPU = Debug|Any CPU
26 | Release|Any CPU = Release|Any CPU
27 | EndGlobalSection
28 | GlobalSection(ProjectConfigurationPlatforms) = postSolution
29 | {8DEF56CD-601E-443C-9DCE-C4EC54C0B6A6}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
30 | {8DEF56CD-601E-443C-9DCE-C4EC54C0B6A6}.Debug|Any CPU.Build.0 = Debug|Any CPU
31 | {8DEF56CD-601E-443C-9DCE-C4EC54C0B6A6}.Release|Any CPU.ActiveCfg = Release|Any CPU
32 | {8DEF56CD-601E-443C-9DCE-C4EC54C0B6A6}.Release|Any CPU.Build.0 = Release|Any CPU
33 | {9544D94B-9B6E-4B61-8A09-88382205BF86}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
34 | {9544D94B-9B6E-4B61-8A09-88382205BF86}.Debug|Any CPU.Build.0 = Debug|Any CPU
35 | {9544D94B-9B6E-4B61-8A09-88382205BF86}.Release|Any CPU.ActiveCfg = Release|Any CPU
36 | {9544D94B-9B6E-4B61-8A09-88382205BF86}.Release|Any CPU.Build.0 = Release|Any CPU
37 | {C9AAC14B-E695-4508-83B7-ACB8FC5A7284}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
38 | {C9AAC14B-E695-4508-83B7-ACB8FC5A7284}.Debug|Any CPU.Build.0 = Debug|Any CPU
39 | {C9AAC14B-E695-4508-83B7-ACB8FC5A7284}.Release|Any CPU.ActiveCfg = Release|Any CPU
40 | {C9AAC14B-E695-4508-83B7-ACB8FC5A7284}.Release|Any CPU.Build.0 = Release|Any CPU
41 | {F63E0957-B60B-47A3-96BB-76DC243D0C8A}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
42 | {F63E0957-B60B-47A3-96BB-76DC243D0C8A}.Debug|Any CPU.Build.0 = Debug|Any CPU
43 | {F63E0957-B60B-47A3-96BB-76DC243D0C8A}.Release|Any CPU.ActiveCfg = Release|Any CPU
44 | {F63E0957-B60B-47A3-96BB-76DC243D0C8A}.Release|Any CPU.Build.0 = Release|Any CPU
45 | {39613BA0-1206-4A4B-A16A-C1F2A22D1267}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
46 | {39613BA0-1206-4A4B-A16A-C1F2A22D1267}.Debug|Any CPU.Build.0 = Debug|Any CPU
47 | {39613BA0-1206-4A4B-A16A-C1F2A22D1267}.Release|Any CPU.ActiveCfg = Release|Any CPU
48 | {39613BA0-1206-4A4B-A16A-C1F2A22D1267}.Release|Any CPU.Build.0 = Release|Any CPU
49 | EndGlobalSection
50 | GlobalSection(SolutionProperties) = preSolution
51 | HideSolutionNode = FALSE
52 | EndGlobalSection
53 | GlobalSection(NestedProjects) = preSolution
54 | {8DEF56CD-601E-443C-9DCE-C4EC54C0B6A6} = {D2AD5B1A-C8C2-487F-89CA-04900885F946}
55 | {9544D94B-9B6E-4B61-8A09-88382205BF86} = {E6A458E6-AF91-4FB7-9224-5FC5E00C3996}
56 | {C9AAC14B-E695-4508-83B7-ACB8FC5A7284} = {BDC8840A-C964-4EFB-8778-9BC01F516491}
57 | {39613BA0-1206-4A4B-A16A-C1F2A22D1267} = {D5E689AA-BE7E-4F5F-AF51-03F71C6C31B2}
58 | {F63E0957-B60B-47A3-96BB-76DC243D0C8A} = {2322D330-1A60-4F79-B553-53DED803A098}
59 | EndGlobalSection
60 | EndGlobal
61 |
--------------------------------------------------------------------------------
/Solutions/MSpecTests.SharpArchCookbook/MSpecTests.SharpArchCookbook.csproj.vspscc:
--------------------------------------------------------------------------------
1 | ""
2 | {
3 | "FILE_VERSION" = "9237"
4 | "ENLISTMENT_CHOICE" = "NEVER"
5 | "PROJECT_FILE_RELATIVE_PATH" = ""
6 | "NUMBER_OF_EXCLUDED_FILES" = "0"
7 | "ORIGINAL_PROJECT_FILE_PATH" = ""
8 | "NUMBER_OF_NESTED_PROJECTS" = "0"
9 | "SOURCE_CONTROL_SETTINGS_PROVIDER" = "PROVIDER"
10 | }
11 |
--------------------------------------------------------------------------------
/Solutions/MSpecTests.SharpArchCookbook/Properties/AssemblyInfo.cs:
--------------------------------------------------------------------------------
1 | using System.Reflection;
2 | using System.Runtime.CompilerServices;
3 | using System.Runtime.InteropServices;
4 |
5 | // General Information about an assembly is controlled through the following
6 | // set of attributes. Change these attribute values to modify the information
7 | // associated with an assembly.
8 | [assembly: AssemblyTitle("MSpecTests.SharpArchCookbook")]
9 | [assembly: AssemblyDescription("")]
10 | [assembly: AssemblyConfiguration("")]
11 | [assembly: AssemblyCompany("Microsoft")]
12 | [assembly: AssemblyProduct("MSpecTests.SharpArchCookbook")]
13 | [assembly: AssemblyCopyright("Copyright © Microsoft 2009")]
14 | [assembly: AssemblyTrademark("")]
15 | [assembly: AssemblyCulture("")]
16 |
17 | // Setting ComVisible to false makes the types in this assembly not visible
18 | // to COM components. If you need to access a type in this assembly from
19 | // COM, set the ComVisible attribute to true on that type.
20 | [assembly: ComVisible(false)]
21 |
22 | // The following GUID is for the ID of the typelib if this project is exposed to COM
23 | [assembly: Guid("1b188fdd-c0ef-4033-9d3f-bb4efbdbca8e")]
24 |
25 | // Version information for an assembly consists of the following four values:
26 | //
27 | // Major Version
28 | // Minor Version
29 | // Build Number
30 | // Revision
31 | //
32 | // You can specify all the values or you can default the Build and Revision Numbers
33 | // by using the '*' as shown below:
34 | // [assembly: AssemblyVersion("1.0.*")]
35 | [assembly: AssemblyVersion("1.0.0.0")]
36 | [assembly: AssemblyFileVersion("1.0.0.0")]
37 |
--------------------------------------------------------------------------------
/Solutions/MSpecTests.SharpArchCookbook/Tasks/ProductModelTasksSpecs.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using System.Collections.Generic;
3 | using System.Linq;
4 | using System.Text;
5 |
6 | namespace MSpecTests.SharpArchCookbook.Tasks
7 | {
8 | class ProductModelTasksSpecs
9 | {
10 | }
11 | }
12 |
--------------------------------------------------------------------------------
/Solutions/MSpecTests.SharpArchCookbook/Tasks/ProductTasksSpecs.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using System.Collections.Generic;
3 | using System.Linq;
4 | using System.Text;
5 |
6 | namespace MSpecTests.SharpArchCookbook.Tasks
7 | {
8 | class ProductTasksSpecs
9 | {
10 | }
11 | }
12 |
--------------------------------------------------------------------------------
/Solutions/MSpecTests.SharpArchCookbook/Web.Mvc.Controllers/ProductModelsController.cs:
--------------------------------------------------------------------------------
1 | //-------------------------------------------------------------------------------------------------
2 | //
3 | // Marked as auto-generated so StyleCop will ignore BDD style tests
4 | //
5 | //-------------------------------------------------------------------------------------------------
6 |
7 | using SharpArchCookbook.Domain;
8 |
9 | #pragma warning disable 169
10 | // ReSharper disable InconsistentNaming
11 | // ReSharper disable UnusedMember.Global
12 | // ReSharper disable UnusedMember.Local
13 |
14 | namespace MSpecTests.SharpArchCookbook.Web.Mvc.Controllers
15 | {
16 | using System.Web.Mvc;
17 |
18 | using System;
19 | using System.Collections.Generic;
20 |
21 | using global::SharpArchCookbook.Domain.Contracts.Tasks;
22 | using global::SharpArchCookbook.Web.Mvc.Controllers;
23 |
24 | using Machine.Specifications;
25 | using Machine.Specifications.AutoMocking.Rhino;
26 | using Machine.Specifications.Mvc;
27 | using Rhino.Mocks;
28 |
29 | public abstract class specification_for_product_models_controller : Specification
30 | {
31 | protected static IProductModelTasks product_model_tasks;
32 |
33 | Establish context = () => {
34 | product_model_tasks = DependencyOf();
35 | };
36 | }
37 |
38 | [Subject(typeof(ProductModelsController))]
39 | public class when_the_product_models_controller_is_asked_for_the_default_view : specification_for_product_models_controller
40 | {
41 | static List the_view_model;
42 | static ActionResult result;
43 |
44 | Establish context = () => {
45 | product_model_tasks.Stub(x => x.GetAll()).Return(the_view_model);
46 | };
47 |
48 | Because of = () => result = subject.Index();
49 |
50 | It should_return_the_default_view = () => result.ShouldBeAView().And().ShouldUseDefaultView();
51 | }
52 |
53 | [Subject(typeof(ProductModelsController))]
54 | public class when_the_products_controller_is_to_create_or_update : specification_for_product_models_controller
55 | {
56 | static ActionResult result;
57 | static ProductModel product_model;
58 |
59 | private Establish context = () =>
60 | {
61 | product_model = new ProductModel
62 | {
63 | ModifiedDate = DateTime.Now,
64 | Name = "Sharp Architecture"
65 | };
66 | };
67 |
68 | Because of = () => result = subject.CreateOrUpdate(product_model);
69 |
70 | It it_should_ask_tasks_to_add_new_product_model = () => product_model_tasks.AssertWasCalled(x => x.CreateOrUpdate(product_model));
71 | }
72 |
73 | [Subject(typeof(ProductModelsController))]
74 | public class when_the_products_controller_is_asked_to_create_a_product_with_null_name : specification_for_product_models_controller
75 | {
76 | static ActionResult result;
77 | static ProductModel product_model;
78 |
79 | private Establish context = () =>
80 | {
81 | product_model = new ProductModel
82 | {
83 | ModifiedDate = DateTime.Now,
84 | Name = null
85 | };
86 | };
87 |
88 | Because of = () => result = subject.CreateOrUpdate(product_model);
89 |
90 | It it_should_not_ask_tasks_to_add_new_product_model = () => product_model_tasks.AssertWasNotCalled(x => x.CreateOrUpdate(product_model));
91 | }
92 |
93 | [Subject(typeof(ProductModelsController))]
94 | public class when_the_products_controller_is_asked_to_create_a_product_with_3_charachter_name : specification_for_product_models_controller
95 | {
96 | static ActionResult result;
97 | static ProductModel product_model;
98 |
99 | private Establish context = () =>
100 | {
101 | product_model = new ProductModel
102 | {
103 | ModifiedDate = DateTime.Now,
104 | Name = "abc"
105 | };
106 | };
107 |
108 | Because of = () => result = subject.CreateOrUpdate(product_model);
109 |
110 | It it_should_not_ask_tasks_to_add_new_product_model = () => product_model_tasks.AssertWasNotCalled(x => x.CreateOrUpdate(product_model));
111 | }
112 | }
113 |
--------------------------------------------------------------------------------
/Solutions/MSpecTests.SharpArchCookbook/Web.Mvc.Controllers/ProductsControllerSpecs.cs:
--------------------------------------------------------------------------------
1 | //-------------------------------------------------------------------------------------------------
2 | //
3 | // Marked as auto-generated so StyleCop will ignore BDD style tests
4 | //
5 | //-------------------------------------------------------------------------------------------------
6 |
7 | using System.Collections.Generic;
8 | using MvcContrib.Pagination;
9 | using SharpArchCookbook.Domain;
10 | using SharpArchCookbook.Web.Mvc.Controllers.ViewModels;
11 |
12 | #pragma warning disable 169
13 | // ReSharper disable InconsistentNaming
14 | // ReSharper disable UnusedMember.Global
15 | // ReSharper disable UnusedMember.Local
16 |
17 | namespace MSpecTests.SharpArchCookbook.Web.Mvc.Controllers
18 | {
19 | using System.Web.Mvc;
20 |
21 | using global::SharpArchCookbook.Web.Mvc.Controllers;
22 | using global::SharpArchCookbook.Web.Mvc.Controllers.Queries.Products;
23 |
24 | using Machine.Specifications;
25 | using Machine.Specifications.AutoMocking.Rhino;
26 | using Machine.Specifications.Mvc;
27 | using Rhino.Mocks;
28 |
29 | public abstract class specification_for_products_controller : Specification
30 | {
31 | protected static IProductsListQuery products_list_query;
32 | protected static IProductsForSaleQuery products_for_sale_query;
33 |
34 | Establish context = () =>
35 | {
36 | products_for_sale_query = DependencyOf();
37 | products_list_query = DependencyOf();
38 | };
39 | }
40 |
41 | [Subject(typeof(ProductsController))]
42 | public class when_the_products_controller_is_asked_for_the_default_view : specification_for_products_controller
43 | {
44 | static ProductsListViewModel the_view_model;
45 | static IPagination products;
46 | static ActionResult result;
47 |
48 | Establish context = () =>
49 | {
50 | the_view_model = new ProductsListViewModel();
51 | products_list_query.Stub(x => x.GetPagedList(0, 50)).Return(products);
52 | the_view_model.Products = products;
53 | };
54 |
55 | Because of = () => result = subject.Index(null);
56 |
57 | It should_return_the_default_view = () => result.ShouldBeAView().And().ShouldUseDefaultView();
58 | }
59 |
60 | [Subject(typeof(ProductsController))]
61 | public class when_the_products_controller_is_asked_to_get_products_for_sale : specification_for_products_controller
62 | {
63 | static ActionResult result;
64 | static IList products_List;
65 |
66 | Establish context = () => products_for_sale_query.Stub(p => p.GetProductsForSale()).Return(products_List);
67 |
68 | Because of = () => result = subject.ForSale();
69 |
70 | It should_get_products_from_product_tasks = () => products_for_sale_query.AssertWasCalled(p => p.GetProductsForSale());
71 | }
72 | }
73 |
--------------------------------------------------------------------------------
/Solutions/MSpecTests.SharpArchCookbook/packages.config:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/Solutions/SharpArchCookbook.Domain/Address.cs:
--------------------------------------------------------------------------------
1 | namespace SharpArchCookbook.Domain
2 | {
3 | using System;
4 | using SharpArch.Domain.DomainModel;
5 |
6 | public class Address : Entity
7 | {
8 | public virtual string AddressLine1 { get; set; }
9 |
10 | public virtual string AddressLine2 { get; set; }
11 |
12 | public virtual string City { get; set; }
13 |
14 | public virtual string StateProvince { get; set; }
15 |
16 | public virtual string PostalCode { get; set; }
17 |
18 | public virtual string CountryRegion { get; set; }
19 |
20 | public virtual DateTime ModifiedDate { get; set; }
21 | }
22 | }
23 |
--------------------------------------------------------------------------------
/Solutions/SharpArchCookbook.Domain/Contracts/Tasks/IProductModelTasks.cs:
--------------------------------------------------------------------------------
1 | namespace SharpArchCookbook.Domain.Contracts.Tasks
2 | {
3 | using System.Collections.Generic;
4 |
5 | public interface IProductModelTasks
6 | {
7 | List GetAll();
8 |
9 | ProductModel Get(int id);
10 |
11 | ProductModel CreateOrUpdate(ProductModel productModel);
12 |
13 | void Delete(int id);
14 | }
15 | }
16 |
--------------------------------------------------------------------------------
/Solutions/SharpArchCookbook.Domain/Customer.cs:
--------------------------------------------------------------------------------
1 | namespace SharpArchCookbook.Domain
2 | {
3 | using System;
4 | using SharpArch.Domain.DomainModel;
5 |
6 | public class Customer : Entity
7 | {
8 | public virtual bool NameStyle { get; set; }
9 |
10 | public virtual string Title { get; set; }
11 |
12 | public virtual string FirstName { get; set; }
13 |
14 | public virtual string MiddleName { get; set; }
15 |
16 | public virtual string LastName { get; set; }
17 |
18 | public virtual string Suffix { get; set; }
19 |
20 | public virtual string CompanyName { get; set; }
21 |
22 | public virtual string SalesPerson { get; set; }
23 |
24 | public virtual string EmailAddress { get; set; }
25 |
26 | public virtual string PasswordHash { get; set; }
27 |
28 | public virtual string PasswordSalt { get; set; }
29 |
30 | public virtual CustomerAddress CustomerAddress { get; set; }
31 |
32 | public virtual DateTime ModifiedDate { get; set; }
33 | }
34 | }
--------------------------------------------------------------------------------
/Solutions/SharpArchCookbook.Domain/CustomerAddress.cs:
--------------------------------------------------------------------------------
1 | namespace SharpArchCookbook.Domain
2 | {
3 | using System;
4 | using SharpArch.Domain.DomainModel;
5 |
6 | ///
7 | /// Notice the EntityWithTypedId. Techically, this is a CompositeId
8 | /// based off of Address and Customer, but this ends up being a chore to impelement
9 | /// due to the PrimaryKeyConvention. In a real project, it would be better to throw in
10 | /// a CustomerAddressId column, populate it and not deal with this.
11 | ///
12 | public class CustomerAddress : EntityWithTypedId
13 | {
14 | public virtual string AddressType { get; set; }
15 |
16 | public virtual Address Address { get; set; }
17 |
18 | public virtual Customer Customer { get; set; }
19 |
20 | public virtual DateTime ModifiedDate { get; set; }
21 | }
22 | }
--------------------------------------------------------------------------------
/Solutions/SharpArchCookbook.Domain/Product.cs:
--------------------------------------------------------------------------------
1 | namespace SharpArchCookbook.Domain
2 | {
3 | using System;
4 | using System.ComponentModel.DataAnnotations;
5 |
6 | using SharpArch.Domain.DomainModel;
7 |
8 | public class Product : Entity
9 | {
10 | [Required(ErrorMessage = "Gotta have a name dude")]
11 | public virtual string Name { get; set; }
12 |
13 | public virtual string ProductNumber { get; set; }
14 |
15 | public virtual string Color { get; set; }
16 |
17 | public virtual double StandardCost { get; set; }
18 |
19 | public virtual double ListPrice { get; set; }
20 |
21 | public virtual string Size { get; set; }
22 |
23 | public virtual decimal Weight { get; set; }
24 |
25 | public virtual ProductCategory Category { get; set; }
26 |
27 | public virtual ProductModel Model { get; set; }
28 |
29 | public virtual DateTime SellStartDate { get; set; }
30 |
31 | public virtual DateTime SellEndDate { get; set; }
32 |
33 | public virtual DateTime DiscontinuedDate { get; set; }
34 |
35 | public virtual byte[] ThumbNailPhoto { get; set; }
36 |
37 | public virtual string ThumbnailPhotoFileName { get; set; }
38 |
39 | public virtual DateTime ModifiedDate { get; set; }
40 | }
41 | }
--------------------------------------------------------------------------------
/Solutions/SharpArchCookbook.Domain/ProductCategory.cs:
--------------------------------------------------------------------------------
1 | namespace SharpArchCookbook.Domain
2 | {
3 | using System;
4 | using System.Collections.Generic;
5 |
6 | using SharpArch.Domain.DomainModel;
7 |
8 | public class ProductCategory : Entity
9 | {
10 | public virtual ProductCategory Parent { get; set; }
11 |
12 | public virtual string Name { get; set; }
13 |
14 | public virtual DateTime ModifiedDate { get; set; }
15 | }
16 | }
17 |
--------------------------------------------------------------------------------
/Solutions/SharpArchCookbook.Domain/ProductDescription.cs:
--------------------------------------------------------------------------------
1 | namespace SharpArchCookbook.Domain
2 | {
3 | using System;
4 |
5 | using SharpArch.Domain.DomainModel;
6 |
7 | public class ProductDescription : Entity
8 | {
9 | public virtual string Description { get; set; }
10 |
11 | public virtual DateTime ModifiedDate { get; set; }
12 | }
13 | }
--------------------------------------------------------------------------------
/Solutions/SharpArchCookbook.Domain/ProductModeProductionDescription.cs:
--------------------------------------------------------------------------------
1 | namespace SharpArchCookbook.Domain
2 | {
3 | using System;
4 |
5 | using SharpArch.Domain.DomainModel;
6 |
7 | public class ProductModeProductionDescription : Entity
8 | {
9 | public virtual ProductModel ProductModel { get; set; }
10 |
11 | public virtual ProductDescription ProductDescription { get; set; }
12 |
13 | public virtual string Culture { get; set; }
14 |
15 | public virtual DateTime ModifiedDate { get; set; }
16 | }
17 | }
--------------------------------------------------------------------------------
/Solutions/SharpArchCookbook.Domain/ProductModel.cs:
--------------------------------------------------------------------------------
1 | namespace SharpArchCookbook.Domain
2 | {
3 | using System;
4 | using System.ComponentModel.DataAnnotations;
5 | using SharpArch.Domain.DomainModel;
6 |
7 | public class ProductModel : Entity
8 | {
9 | [Required]
10 | [StringLength(100, MinimumLength = 10)]
11 | public virtual string Name { get; set; }
12 |
13 | public virtual DateTime ModifiedDate { get; set; }
14 | }
15 | }
16 |
--------------------------------------------------------------------------------
/Solutions/SharpArchCookbook.Domain/Properties/AssemblyInfo.cs:
--------------------------------------------------------------------------------
1 | using System.Reflection;
2 |
3 | // General Information about an assembly is controlled through the following
4 | // set of attributes. Change these attribute values to modify the information
5 | // associated with an assembly.
6 | [assembly: AssemblyTitle("SharpArchCookbook.Domain")]
7 | [assembly: AssemblyDescription("")]
8 | [assembly: AssemblyConfiguration("")]
9 |
--------------------------------------------------------------------------------
/Solutions/SharpArchCookbook.Domain/SalesOrderDetail.cs:
--------------------------------------------------------------------------------
1 | namespace SharpArchCookbook.Domain
2 | {
3 | using System;
4 | using System.Data.SqlTypes;
5 |
6 | using SharpArch.Domain.DomainModel;
7 |
8 | public class SalesOrderDetail : Entity
9 | {
10 | public virtual SalesOrderDetail Detail { get; set; }
11 |
12 | public virtual int Quantity { get; set; }
13 |
14 | public virtual Product Product { get; set; }
15 |
16 | // public virtual SqlMoney UnitPrice { get; set; }
17 |
18 | // public virtual SqlMoney LineTotal { get; set; }
19 |
20 | public virtual DateTime ModifiedDate { get; set; }
21 | }
22 | }
--------------------------------------------------------------------------------
/Solutions/SharpArchCookbook.Domain/SalesOrderHeader.cs:
--------------------------------------------------------------------------------
1 | namespace SharpArchCookbook.Domain
2 | {
3 | using System;
4 | using System.Data.SqlTypes;
5 |
6 | using SharpArch.Domain.DomainModel;
7 |
8 | public class SalesOrderHeader : Entity
9 | {
10 | public virtual int RevisionNumber { get; set; }
11 |
12 | public virtual DateTime OrderDate { get; set; }
13 |
14 | public virtual DateTime DueDate { get; set; }
15 |
16 | public virtual DateTime ShipDate { get; set; }
17 |
18 | public virtual SalesStatus Status { get; set; }
19 |
20 | public virtual bool OnlineOrderFlag { get; set; }
21 |
22 | public virtual string SalesOrderNumber { get; set; }
23 |
24 | public virtual string PurchaseOrderNumber { get; set; }
25 |
26 | public virtual Customer Customer { get; set; }
27 |
28 | public virtual CustomerAddress ShipToAddress { get; set; }
29 |
30 | public virtual CustomerAddress BillToAddress { get; set; }
31 |
32 | public virtual string ShipMethod { get; set; }
33 |
34 | // public virtual SqlMoney SubTotal { get; set; }
35 |
36 | // public virtual SqlMoney TaxAmount { get; set; }
37 |
38 | // public virtual SqlMoney Freight { get; set; }
39 |
40 | // public virtual SqlMoney TotalDue { get; set; }
41 |
42 | public virtual DateTime ModifiedDate { get; set; }
43 | }
44 | }
--------------------------------------------------------------------------------
/Solutions/SharpArchCookbook.Domain/SalesStatus.cs:
--------------------------------------------------------------------------------
1 | namespace SharpArchCookbook.Domain
2 | {
3 | public enum SalesStatus
4 | {
5 | InProgress = 1,
6 | Approved = 2,
7 | BackOrdered = 3,
8 | Rejected = 4,
9 | Shipped = 5,
10 | Cancelled = 6
11 | }
12 | }
--------------------------------------------------------------------------------
/Solutions/SharpArchCookbook.Domain/SharpArchCookbook.Domain.csproj.vspscc:
--------------------------------------------------------------------------------
1 | ""
2 | {
3 | "FILE_VERSION" = "9237"
4 | "ENLISTMENT_CHOICE" = "NEVER"
5 | "PROJECT_FILE_RELATIVE_PATH" = ""
6 | "NUMBER_OF_EXCLUDED_FILES" = "0"
7 | "ORIGINAL_PROJECT_FILE_PATH" = ""
8 | "NUMBER_OF_NESTED_PROJECTS" = "0"
9 | "SOURCE_CONTROL_SETTINGS_PROVIDER" = "PROVIDER"
10 | }
11 |
--------------------------------------------------------------------------------
/Solutions/SharpArchCookbook.Domain/packages.config:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
--------------------------------------------------------------------------------
/Solutions/SharpArchCookbook.Infrastructure/NHibernateMaps/AddressMap.cs:
--------------------------------------------------------------------------------
1 | namespace SharpArchCookbook.Infrastructure.NHibernateMaps
2 | {
3 | using Domain;
4 |
5 | using FluentNHibernate.Automapping;
6 | using FluentNHibernate.Automapping.Alterations;
7 |
8 | public class AddressMap : IAutoMappingOverride
9 | {
10 | public void Override(AutoMapping mapping)
11 | {
12 | mapping.Table("Address");
13 |
14 | mapping.Id(x => x.Id, "AddressID");
15 | }
16 | }
17 | }
18 |
--------------------------------------------------------------------------------
/Solutions/SharpArchCookbook.Infrastructure/NHibernateMaps/AutoPersistenceModelGenerator.cs:
--------------------------------------------------------------------------------
1 | namespace SharpArchCookbook.Infrastructure.NHibernateMaps
2 | {
3 | #region Using Directives
4 |
5 | using System;
6 |
7 | using Conventions;
8 |
9 | using Domain;
10 |
11 | using FluentNHibernate.Automapping;
12 | using FluentNHibernate.Conventions;
13 |
14 | using SharpArch.Domain.DomainModel;
15 | using SharpArch.NHibernate.FluentNHibernate;
16 |
17 | #endregion
18 |
19 | ///
20 | /// Generates the automapping for the domain assembly
21 | ///
22 | public class AutoPersistenceModelGenerator : IAutoPersistenceModelGenerator
23 | {
24 | public AutoPersistenceModel Generate()
25 | {
26 | var mappings = AutoMap.AssemblyOf(new AutomappingConfiguration());
27 | mappings.IgnoreBase();
28 | mappings.IgnoreBase(typeof(EntityWithTypedId<>));
29 | mappings.Conventions.Setup(GetConventions());
30 | mappings.UseOverridesFromAssemblyOf();
31 |
32 | return mappings;
33 | }
34 |
35 | private static Action GetConventions()
36 | {
37 | return c =>
38 | {
39 | c.Add();
40 | c.Add();
41 | c.Add();
42 | c.Add();
43 | };
44 | }
45 | }
46 | }
--------------------------------------------------------------------------------
/Solutions/SharpArchCookbook.Infrastructure/NHibernateMaps/AutomappingConfiguration.cs:
--------------------------------------------------------------------------------
1 | namespace SharpArchCookbook.Infrastructure.NHibernateMaps
2 | {
3 | using System;
4 | using System.Linq;
5 |
6 | using FluentNHibernate;
7 | using FluentNHibernate.Automapping;
8 |
9 | using SharpArch.Domain.DomainModel;
10 |
11 | public class AutomappingConfiguration : DefaultAutomappingConfiguration
12 | {
13 | public override bool ShouldMap(Type type)
14 | {
15 | return type.GetInterfaces().Any(x =>
16 | x.IsGenericType &&
17 | x.GetGenericTypeDefinition() == typeof(IEntityWithTypedId<>));
18 |
19 | }
20 |
21 | public override bool IsId(Member member)
22 | {
23 | return member.Name == "Id";
24 | }
25 | }
26 | }
--------------------------------------------------------------------------------
/Solutions/SharpArchCookbook.Infrastructure/NHibernateMaps/Conventions/CustomForeignKeyConvention.cs:
--------------------------------------------------------------------------------
1 | namespace SharpArchCookbook.Infrastructure.NHibernateMaps.Conventions
2 | {
3 | #region Using Directives
4 |
5 | using System;
6 |
7 | using FluentNHibernate;
8 | using FluentNHibernate.Conventions;
9 |
10 | #endregion
11 |
12 | public class CustomForeignKeyConvention : ForeignKeyConvention
13 | {
14 | protected override string GetKeyName(Member property, Type type)
15 | {
16 | if (property == null)
17 | {
18 | return type.Name + "Id";
19 | }
20 |
21 | return property.Name + "Id";
22 | }
23 | }
24 | }
--------------------------------------------------------------------------------
/Solutions/SharpArchCookbook.Infrastructure/NHibernateMaps/Conventions/HasManyConvention.cs:
--------------------------------------------------------------------------------
1 | namespace SharpArchCookbook.Infrastructure.NHibernateMaps.Conventions
2 | {
3 | #region Using Directives
4 |
5 | using FluentNHibernate.Conventions;
6 |
7 | #endregion
8 |
9 | public class HasManyConvention : IHasManyConvention
10 | {
11 | public void Apply(FluentNHibernate.Conventions.Instances.IOneToManyCollectionInstance instance)
12 | {
13 | instance.Key.Column(instance.EntityType.Name + "Id");
14 | instance.Cascade.AllDeleteOrphan();
15 | instance.Inverse();
16 | }
17 | }
18 | }
--------------------------------------------------------------------------------
/Solutions/SharpArchCookbook.Infrastructure/NHibernateMaps/Conventions/PrimaryKeyConvention.cs:
--------------------------------------------------------------------------------
1 | namespace SharpArchCookbook.Infrastructure.NHibernateMaps.Conventions
2 | {
3 | #region Using Directives
4 |
5 | using FluentNHibernate.Conventions;
6 |
7 | #endregion
8 |
9 | public class PrimaryKeyConvention : IIdConvention
10 | {
11 | public void Apply(FluentNHibernate.Conventions.Instances.IIdentityInstance instance)
12 | {
13 | instance.Column(instance.EntityType.Name + "Id");
14 | }
15 | }
16 | }
--------------------------------------------------------------------------------
/Solutions/SharpArchCookbook.Infrastructure/NHibernateMaps/Conventions/TableNameConvention.cs:
--------------------------------------------------------------------------------
1 | namespace SharpArchCookbook.Infrastructure.NHibernateMaps.Conventions
2 | {
3 | #region Using Directives
4 |
5 | using FluentNHibernate.Conventions;
6 |
7 | #endregion
8 |
9 | public class TableNameConvention : IClassConvention
10 | {
11 | public void Apply(FluentNHibernate.Conventions.Instances.IClassInstance instance)
12 | {
13 | instance.Table(instance.EntityType.Name.InflectTo().Capitalized);
14 |
15 | }
16 | }
17 | }
--------------------------------------------------------------------------------
/Solutions/SharpArchCookbook.Infrastructure/NHibernateMaps/CustomerAddressMap.cs:
--------------------------------------------------------------------------------
1 | namespace SharpArchCookbook.Infrastructure.NHibernateMaps
2 | {
3 | using System;
4 |
5 | using Domain;
6 | using FluentNHibernate.Automapping;
7 | using FluentNHibernate.Automapping.Alterations;
8 |
9 | public class CustomerAddressMap : IAutoMappingOverride
10 | {
11 | public void Override(AutoMapping mapping)
12 | {
13 | mapping.Table("CustomerAddress");
14 |
15 | mapping.Id(x => x.Id, "rowguid");
16 | }
17 | }
18 | }
--------------------------------------------------------------------------------
/Solutions/SharpArchCookbook.Infrastructure/NHibernateMaps/CustomerMap.cs:
--------------------------------------------------------------------------------
1 | namespace SharpArchCookbook.Infrastructure.NHibernateMaps
2 | {
3 | using Domain;
4 |
5 | using FluentNHibernate.Automapping;
6 | using FluentNHibernate.Automapping.Alterations;
7 |
8 | public class CustomerMap : IAutoMappingOverride
9 | {
10 | public void Override(AutoMapping mapping)
11 | {
12 | mapping.Table("Customer");
13 |
14 | mapping.Id(x => x.Id, "CustomerID");
15 | }
16 | }
17 | }
18 |
--------------------------------------------------------------------------------
/Solutions/SharpArchCookbook.Infrastructure/NHibernateMaps/ProductCategoryMap.cs:
--------------------------------------------------------------------------------
1 | namespace SharpArchCookbook.Infrastructure.NHibernateMaps
2 | {
3 | using FluentNHibernate.Automapping;
4 | using FluentNHibernate.Automapping.Alterations;
5 |
6 | using SharpArchCookbook.Domain;
7 |
8 | public class ProductCategoryMap : IAutoMappingOverride
9 | {
10 | public void Override(AutoMapping mapping)
11 | {
12 | mapping.Table("ProductCategory");
13 |
14 | mapping.Id(x => x.Id, "ProductCategoryID");
15 |
16 | mapping.References(x => x.Parent, "ParentProductCategoryID");
17 | }
18 | }
19 | }
--------------------------------------------------------------------------------
/Solutions/SharpArchCookbook.Infrastructure/NHibernateMaps/ProductMap.cs:
--------------------------------------------------------------------------------
1 | namespace SharpArchCookbook.Infrastructure.NHibernateMaps
2 | {
3 | using Domain;
4 |
5 | using FluentNHibernate.Automapping;
6 | using FluentNHibernate.Automapping.Alterations;
7 |
8 | public class ProductMap : IAutoMappingOverride
9 | {
10 | public void Override(AutoMapping mapping)
11 | {
12 | mapping.Table("Product");
13 |
14 | mapping.Id(x => x.Id, "ProductID");
15 |
16 | mapping.References(x => x.Category, "ProductCategoryID").Cascade.All();
17 | mapping.References(x => x.Model, "ProductModelID");
18 | }
19 | }
20 | }
--------------------------------------------------------------------------------
/Solutions/SharpArchCookbook.Infrastructure/NHibernateMaps/ProductModelMap.cs:
--------------------------------------------------------------------------------
1 | namespace SharpArchCookbook.Infrastructure.NHibernateMaps
2 | {
3 | using Domain;
4 |
5 | using FluentNHibernate.Automapping;
6 | using FluentNHibernate.Automapping.Alterations;
7 |
8 | public class ProductModelMap : IAutoMappingOverride
9 | {
10 | public void Override(AutoMapping mapping)
11 | {
12 | mapping.Table("ProductModel");
13 | mapping.Id(x => x.Id, "ProductModelID");
14 | }
15 | }
16 | }
--------------------------------------------------------------------------------
/Solutions/SharpArchCookbook.Infrastructure/NHibernateMaps/ProductModelProductDescriptionMap.cs:
--------------------------------------------------------------------------------
1 | namespace SharpArchCookbook.Infrastructure.NHibernateMaps
2 | {
3 | using Domain;
4 |
5 | using FluentNHibernate.Automapping;
6 | using FluentNHibernate.Automapping.Alterations;
7 |
8 | public class ProductModelProductDescriptionMap : IAutoMappingOverride
9 | {
10 | public void Override(AutoMapping mapping)
11 | {
12 | mapping.Table("ProductModeProductionDescription");
13 |
14 | mapping.CompositeId().KeyReference(x => x.ProductModel, "ProductModelID")
15 | .KeyReference(x => x.ProductDescription, "ProductDescriptionID");
16 | }
17 | }
18 | }
--------------------------------------------------------------------------------
/Solutions/SharpArchCookbook.Infrastructure/NHibernateMaps/SalesOrderDetailMap.cs:
--------------------------------------------------------------------------------
1 | using FluentNHibernate.Automapping;
2 | using FluentNHibernate.Automapping.Alterations;
3 |
4 | namespace SharpArchCookbook.Infrastructure.NHibernateMaps
5 | {
6 | using FluentNHibernate.Mapping;
7 | using SharpArchCookbook.Domain;
8 |
9 | public class SalesOrderDetailMap : IAutoMappingOverride
10 | {
11 | public void Override(AutoMapping mapping)
12 | {
13 | mapping.Table("SalesOrderDetail");
14 |
15 | mapping.Id(x => x.Id, "SalesOrderDetailID");
16 | }
17 | }
18 | }
--------------------------------------------------------------------------------
/Solutions/SharpArchCookbook.Infrastructure/NHibernateMaps/SalesOrderHeaderMap.cs:
--------------------------------------------------------------------------------
1 | namespace SharpArchCookbook.Infrastructure.NHibernateMaps
2 | {
3 | using Domain;
4 | using FluentNHibernate.Automapping;
5 | using FluentNHibernate.Automapping.Alterations;
6 |
7 | public class SalesOrderHeaderMap : IAutoMappingOverride
8 | {
9 | public void Override(AutoMapping mapping)
10 | {
11 | mapping.Table("SalesOrderHeader");
12 |
13 | mapping.Id(x => x.Id, "SalesOrderID");
14 | }
15 | }
16 | }
--------------------------------------------------------------------------------
/Solutions/SharpArchCookbook.Infrastructure/Properties/AssemblyInfo.cs:
--------------------------------------------------------------------------------
1 | using System.Reflection;
2 |
3 | // General Information about an assembly is controlled through the following
4 | // set of attributes. Change these attribute values to modify the information
5 | // associated with an assembly.
6 | [assembly: AssemblyTitle("SharpArchCookbook.Infrastructure")]
7 | [assembly: AssemblyDescription("")]
8 | [assembly: AssemblyConfiguration("")]
9 |
--------------------------------------------------------------------------------
/Solutions/SharpArchCookbook.Infrastructure/SharpArchCookbook.Infrastructure.csproj.vspscc:
--------------------------------------------------------------------------------
1 | ""
2 | {
3 | "FILE_VERSION" = "9237"
4 | "ENLISTMENT_CHOICE" = "NEVER"
5 | "PROJECT_FILE_RELATIVE_PATH" = ""
6 | "NUMBER_OF_EXCLUDED_FILES" = "0"
7 | "ORIGINAL_PROJECT_FILE_PATH" = ""
8 | "NUMBER_OF_NESTED_PROJECTS" = "0"
9 | "SOURCE_CONTROL_SETTINGS_PROVIDER" = "PROVIDER"
10 | }
11 |
--------------------------------------------------------------------------------
/Solutions/SharpArchCookbook.Infrastructure/packages.config:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
--------------------------------------------------------------------------------
/Solutions/SharpArchCookbook.Tasks/CommandHandlers/AddCustomerAddressHandler.cs:
--------------------------------------------------------------------------------
1 | namespace SharpArchCookbook.Tasks.CommandHandlers
2 | {
3 | using SharpArch.Domain.Commands;
4 | using SharpArch.Domain.PersistenceSupport;
5 |
6 | using SharpArchCookbook.Domain;
7 | using SharpArchCookbook.Tasks.Commands;
8 |
9 | public class AddCustomerAddressHandler : ICommandHandler
10 | {
11 | private readonly IRepository addressRepository;
12 |
13 | public AddCustomerAddressHandler(IRepository addressRepository)
14 | {
15 | this.addressRepository = addressRepository;
16 | }
17 |
18 | public void Handle(AddCustomerAddressCommand command)
19 | {
20 | var address = new Address
21 | {
22 | AddressLine1 = command.AddressLine1,
23 | AddressLine2 = command.AddressLine2,
24 | City = command.City,
25 | StateProvince = command.StateProvince,
26 | PostalCode = command.PostalCode,
27 | ModifiedDate = command.ModifiedDate,
28 | CountryRegion = command.CountryRegion
29 | };
30 |
31 | this.addressRepository.SaveOrUpdate(address);
32 | }
33 | }
34 | }
--------------------------------------------------------------------------------
/Solutions/SharpArchCookbook.Tasks/CommandHandlers/ChangeCustomerAddressHandler.cs:
--------------------------------------------------------------------------------
1 | namespace SharpArchCookbook.Tasks.CommandHandlers
2 | {
3 | using Commands;
4 | using Domain;
5 |
6 | using SharpArch.Domain.Commands;
7 | using SharpArch.Domain.PersistenceSupport;
8 |
9 | public class ChangeCustomerAddressHandler : ICommandHandler
10 | {
11 | private readonly IRepository addressRepository;
12 |
13 | public ChangeCustomerAddressHandler(IRepository addressRepository)
14 | {
15 | this.addressRepository = addressRepository;
16 | }
17 |
18 | public void Handle(ChangeCustomerAddressCommand command)
19 | {
20 | var address = this.addressRepository.Get(command.Id);
21 |
22 | address.AddressLine1 = command.AddressLine1;
23 | address.AddressLine2 = command.AddressLine2;
24 | address.City = command.City;
25 | address.StateProvince = command.StateProvince;
26 | address.PostalCode = command.PostalCode;
27 | address.ModifiedDate = command.ModifiedDate;
28 | address.CountryRegion = command.CountryRegion;
29 |
30 | this.addressRepository.SaveOrUpdate(address);
31 | }
32 | }
33 | }
34 |
35 |
--------------------------------------------------------------------------------
/Solutions/SharpArchCookbook.Tasks/Commands/AddCustomerAddressCommand.cs:
--------------------------------------------------------------------------------
1 | namespace SharpArchCookbook.Tasks.Commands
2 | {
3 | public class AddCustomerAddressCommand : AddressCommandBase
4 | {
5 | public AddCustomerAddressCommand(
6 | string addressLine1,
7 | string addressLine2,
8 | string city,
9 | string stateProvince,
10 | string postalCode,
11 | string countryRegion)
12 | : base(addressLine1, addressLine2, city, stateProvince, postalCode, countryRegion)
13 | {
14 | }
15 | }
16 | }
--------------------------------------------------------------------------------
/Solutions/SharpArchCookbook.Tasks/Commands/AddressCommandBase.cs:
--------------------------------------------------------------------------------
1 | namespace SharpArchCookbook.Tasks.Commands
2 | {
3 | using System;
4 | using System.ComponentModel.DataAnnotations;
5 |
6 | using SharpArch.Domain.Commands;
7 |
8 | public class AddressCommandBase : CommandBase
9 | {
10 | protected AddressCommandBase(
11 | string addressLine1,
12 | string addressLine2,
13 | string city,
14 | string stateProvince,
15 | string postalCode,
16 | string countryRegion)
17 | {
18 | this.AddressLine1 = addressLine1;
19 | this.AddressLine2 = addressLine2;
20 | this.City = city;
21 | this.StateProvince = stateProvince;
22 | this.PostalCode = postalCode;
23 | this.ModifiedDate = DateTime.Now;
24 | this.CountryRegion = countryRegion;
25 | }
26 |
27 | [Required]
28 | public string AddressLine1 { get; set; }
29 |
30 | public string AddressLine2 { get; set; }
31 |
32 | [Required]
33 | public string City { get; set; }
34 |
35 | [Required]
36 | public string CountryRegion { get; set; }
37 |
38 | [Required]
39 | public DateTime ModifiedDate { get; set; }
40 |
41 | [Required]
42 | public string PostalCode { get; set; }
43 |
44 | [Required]
45 | public string StateProvince { get; set; }
46 | }
47 | }
--------------------------------------------------------------------------------
/Solutions/SharpArchCookbook.Tasks/Commands/ChangeCustomerAddressCommand.cs:
--------------------------------------------------------------------------------
1 | namespace SharpArchCookbook.Tasks.Commands
2 | {
3 | using System.ComponentModel.DataAnnotations;
4 |
5 | public class ChangeCustomerAddressCommand : AddressCommandBase
6 | {
7 | public ChangeCustomerAddressCommand(
8 | int id,
9 | string addressLine1,
10 | string addressLine2,
11 | string city,
12 | string stateProvince,
13 | string postalCode,
14 | string countryRegion)
15 | : base(addressLine1, addressLine2, city, stateProvince, postalCode, countryRegion)
16 | {
17 | this.Id = id;
18 | }
19 |
20 | [Required]
21 | public int Id { get; set; }
22 | }
23 | }
--------------------------------------------------------------------------------
/Solutions/SharpArchCookbook.Tasks/ProductModelTasks.cs:
--------------------------------------------------------------------------------
1 | namespace SharpArchCookbook.Tasks
2 | {
3 | using System;
4 | using System.Collections.Generic;
5 | using System.Linq;
6 |
7 | using Domain;
8 | using Domain.Contracts.Tasks;
9 |
10 | using SharpArch.Domain.PersistenceSupport;
11 |
12 | public class ProductModelTasks : IProductModelTasks
13 | {
14 | private readonly IRepository productModelRepository;
15 |
16 | public ProductModelTasks(IRepository productModelRepository)
17 | {
18 | this.productModelRepository = productModelRepository;
19 | }
20 |
21 | public List GetAll()
22 | {
23 | var allProductModels = this.productModelRepository.GetAll().ToList();
24 | return allProductModels;
25 | }
26 |
27 | public ProductModel Get(int id)
28 | {
29 | return this.productModelRepository.Get(id);
30 | }
31 |
32 | public ProductModel CreateOrUpdate(ProductModel productModel)
33 | {
34 | productModel.ModifiedDate = DateTime.Now;
35 | this.productModelRepository.SaveOrUpdate(productModel);
36 | return productModel;
37 | }
38 |
39 | public void Delete(int id)
40 | {
41 | var productModel = this.productModelRepository.Get(id);
42 | this.productModelRepository.Delete(productModel);
43 | }
44 | }
45 | }
--------------------------------------------------------------------------------
/Solutions/SharpArchCookbook.Tasks/Properties/AssemblyInfo.cs:
--------------------------------------------------------------------------------
1 | using System.Reflection;
2 |
3 | // General Information about an assembly is controlled through the following
4 | // set of attributes. Change these attribute values to modify the information
5 | // associated with an assembly.
6 | [assembly: AssemblyTitle("SharpArchCookbook.Tasks")]
7 | [assembly: AssemblyDescription("")]
8 | [assembly: AssemblyConfiguration("")]
9 |
--------------------------------------------------------------------------------
/Solutions/SharpArchCookbook.Tasks/packages.config:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
--------------------------------------------------------------------------------
/Solutions/SharpArchCookbook.Tests/App.config:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
18 |
19 |
20 |
21 |
22 |
23 |
24 |
25 |
26 |
27 |
28 |
29 |
30 |
31 |
32 |
33 |
34 |
35 |
36 |
37 |
--------------------------------------------------------------------------------
/Solutions/SharpArchCookbook.Tests/Hibernate.cfg.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | NHibernate.Connection.DriverConnectionProvider
5 | NHibernate.Dialect.SQLiteDialect
6 | NHibernate.Driver.SQLite20Driver
7 | Data Source=:memory:;Version=3;New=True;
8 | on_close
9 | true
10 |
11 |
--------------------------------------------------------------------------------
/Solutions/SharpArchCookbook.Tests/ProductsQueryObjectTests.cs:
--------------------------------------------------------------------------------
1 | namespace SharpArchCookbook.Tests
2 | {
3 | using Domain;
4 | using NUnit.Framework;
5 | using SharpArch.NHibernate;
6 | using SharpArch.NHibernate.Contracts.Repositories;
7 | using SharpArch.Testing.NUnit;
8 | using SharpArch.Testing.NUnit.NHibernate;
9 | using Web.Mvc.Controllers.Queries.Products;
10 |
11 | [TestFixture]
12 | public class ProductsQueryObjectTests : RepositoryTestsBase
13 | {
14 | private readonly ProductsListQuery productsListQuery = new ProductsListQuery();
15 | private readonly INHibernateRepository productRepository = new NHibernateRepository();
16 |
17 | protected override void SetUp()
18 | {
19 | ServiceLocatorInitializer.Init();
20 | base.SetUp();
21 | }
22 |
23 | [Test]
24 | public void CanGetViewModel()
25 | {
26 | var productViewModels = this.productsListQuery.GetPagedList(1, 50);
27 | productViewModels.ShouldNotBeNull();
28 | productViewModels.TotalItems.ShouldEqual(1);
29 | }
30 |
31 | protected override void LoadTestData()
32 | {
33 | this.CreatePersistedProducts();
34 | }
35 |
36 | private void CreatePersistedProducts()
37 | {
38 | var product = new Product { Name = "MockProduct" };
39 | this.productRepository.SaveOrUpdate(product);
40 | FlushSessionAndEvict(product);
41 | }
42 | }
43 | }
44 |
--------------------------------------------------------------------------------
/Solutions/SharpArchCookbook.Tests/Properties/AssemblyInfo.cs:
--------------------------------------------------------------------------------
1 | using System.Reflection;
2 | using System.Runtime.CompilerServices;
3 | using System.Runtime.InteropServices;
4 |
5 | // General Information about an assembly is controlled through the following
6 | // set of attributes. Change these attribute values to modify the information
7 | // associated with an assembly.
8 | [assembly: AssemblyTitle("SharpArchCookbook.Tests")]
9 | [assembly: AssemblyDescription("")]
10 | [assembly: AssemblyConfiguration("")]
11 | [assembly: AssemblyCompany("Microsoft")]
12 | [assembly: AssemblyProduct("SharpArchCookbook.Tests")]
13 | [assembly: AssemblyCopyright("Copyright © Microsoft 2011")]
14 | [assembly: AssemblyTrademark("")]
15 | [assembly: AssemblyCulture("")]
16 |
17 | // Setting ComVisible to false makes the types in this assembly not visible
18 | // to COM components. If you need to access a type in this assembly from
19 | // COM, set the ComVisible attribute to true on that type.
20 | [assembly: ComVisible(false)]
21 |
22 | // The following GUID is for the ID of the typelib if this project is exposed to COM
23 | [assembly: Guid("e33b3152-69f1-42ac-8a9f-a104d0f42546")]
24 |
25 | // Version information for an assembly consists of the following four values:
26 | //
27 | // Major Version
28 | // Minor Version
29 | // Build Number
30 | // Revision
31 | //
32 | // You can specify all the values or you can default the Build and Revision Numbers
33 | // by using the '*' as shown below:
34 | // [assembly: AssemblyVersion("1.0.*")]
35 | [assembly: AssemblyVersion("1.0.0.0")]
36 | [assembly: AssemblyFileVersion("1.0.0.0")]
37 |
--------------------------------------------------------------------------------
/Solutions/SharpArchCookbook.Tests/ServiceLocatorInitializer.cs:
--------------------------------------------------------------------------------
1 | namespace SharpArchCookbook.Tests
2 | {
3 | using Castle.MicroKernel.Registration;
4 | using Castle.Windsor;
5 | using CommonServiceLocator.WindsorAdapter;
6 | using Microsoft.Practices.ServiceLocation;
7 | using SharpArch.Domain.PersistenceSupport;
8 | using SharpArch.NHibernate;
9 |
10 | public class ServiceLocatorInitializer
11 | {
12 | public static void Init()
13 | {
14 | IWindsorContainer container = new WindsorContainer();
15 |
16 | container.Register(
17 | Component.For(typeof(IEntityDuplicateChecker))
18 | .ImplementedBy(typeof(EntityDuplicateChecker))
19 | .Named("entityDuplicateChecker"));
20 |
21 | container.Register(
22 | Component.For(typeof(ISessionFactoryKeyProvider))
23 | .ImplementedBy(typeof(DefaultSessionFactoryKeyProvider))
24 | .Named("sessionFactoryKeyProvider"));
25 |
26 | ServiceLocator.SetLocatorProvider(() => new WindsorServiceLocator(container));
27 | }
28 | }
29 | }
30 |
--------------------------------------------------------------------------------
/Solutions/SharpArchCookbook.Tests/SharpArchCookbook.Tests.csproj:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | Debug
5 | AnyCPU
6 | 8.0.30703
7 | 2.0
8 | {CC4A233E-BE8A-47CC-A87C-8352BFD557B7}
9 | Library
10 | Properties
11 | SharpArchCookbook.Tests
12 | SharpArchCookbook.Tests
13 | v4.0
14 | 512
15 |
16 |
17 | true
18 | full
19 | false
20 | bin\Debug\
21 | DEBUG;TRACE
22 | prompt
23 | 4
24 |
25 |
26 | pdbonly
27 | true
28 | bin\Release\
29 | TRACE
30 | prompt
31 | 4
32 |
33 |
34 |
35 | False
36 | ..\..\Packages\Castle.Core.2.5.2\lib\NET35\Castle.Core.dll
37 |
38 |
39 | ..\..\Packages\Castle.Windsor.2.5.3\lib\NET40\Castle.Windsor.dll
40 |
41 |
42 | ..\..\Packages\CommonServiceLocator.WindsorAdapter.1.0\lib\NET35\CommonServiceLocator.WindsorAdapter.dll
43 |
44 |
45 | ..\..\Packages\CommonServiceLocator.1.0\lib\NET35\Microsoft.Practices.ServiceLocation.dll
46 |
47 |
48 | ..\..\Packages\MvcContrib.Mvc3-ci.3.0.68.0\lib\MvcContrib.dll
49 |
50 |
51 | False
52 | ..\..\ReferencedAssemblies\NHibernate\NHibernate.dll
53 |
54 |
55 | ..\..\ReferencedAssemblies\NHibernate\NHibernate.Validator.dll
56 |
57 |
58 | ..\..\ReferencedAssemblies\NUnit\nunit.framework.dll
59 |
60 |
61 | ..\..\ReferencedAssemblies\SharpArchitecture\SharpArch.Domain.dll
62 |
63 |
64 | ..\..\ReferencedAssemblies\SharpArchitecture\SharpArch.NHibernate.dll
65 |
66 |
67 | ..\..\ReferencedAssemblies\SharpArchitecture\SharpArch.Testing.dll
68 |
69 |
70 | ..\..\ReferencedAssemblies\SharpArchitecture\SharpArch.Testing.NUnit.dll
71 |
72 |
73 | ..\..\ReferencedAssemblies\SharpArchitecture\SharpArch.Tests.dll
74 |
75 |
76 |
77 |
78 | ..\..\Packages\System.Data.SQLite.1.0.66.0\lib\System.Data.SQLite.DLL
79 |
80 |
81 |
82 |
83 |
84 |
85 |
86 |
87 |
88 |
89 |
90 |
91 |
92 |
93 | {8DEF56CD-601E-443C-9DCE-C4EC54C0B6A6}
94 | SharpArchCookbook.Domain
95 |
96 |
97 | {6F92992D-8D75-4BA8-87C3-146581235054}
98 | SharpArchCookbook.Web.Mvc
99 |
100 |
101 |
102 |
103 |
104 |
105 |
106 | PreserveNewest
107 |
108 |
109 |
110 |
117 |
--------------------------------------------------------------------------------
/Solutions/SharpArchCookbook.Web.Mvc/CastleWindsor/ControllerInstaller.cs:
--------------------------------------------------------------------------------
1 | using System.Web.Mvc;
2 | using Castle.MicroKernel.Registration;
3 | using Castle.MicroKernel.SubSystems.Configuration;
4 | using Castle.Windsor;
5 |
6 | namespace SharpArchCookbook.Web.Mvc.CastleWindsor
7 | {
8 | public class ControllerInstaller : IWindsorInstaller
9 | {
10 | public void Install(IWindsorContainer container, IConfigurationStore store)
11 | {
12 | container.Register(
13 | Classes
14 | .FromThisAssembly()
15 | .BasedOn()
16 | .Configure(c => c.Named(c.Implementation.Name)).LifestyleTransient()
17 | );
18 | }
19 | }
20 | }
--------------------------------------------------------------------------------
/Solutions/SharpArchCookbook.Web.Mvc/CastleWindsor/HandlerInstaller.cs:
--------------------------------------------------------------------------------
1 | using Castle.MicroKernel.Registration;
2 | using Castle.MicroKernel.SubSystems.Configuration;
3 | using Castle.Windsor;
4 | using SharpArch.Domain.Commands;
5 | using SharpArch.Domain.Events;
6 |
7 | namespace SharpArchCookbook.Web.Mvc.CastleWindsor
8 | {
9 | public class HandlersInstaller : IWindsorInstaller
10 | {
11 | public void Install(IWindsorContainer container, IConfigurationStore store)
12 | {
13 | container.Register(
14 | Classes.FromAssemblyNamed("SharpArchCookbook.Tasks")
15 | .BasedOn(typeof(ICommandHandler<>))
16 | .WithService.FirstInterface().LifestylePerWebRequest());
17 |
18 | container.Register(
19 | Classes.FromAssemblyNamed("SharpArchCookbook.Tasks")
20 | .BasedOn(typeof(ICommandHandler<,>))
21 | .WithService.FirstInterface().LifestylePerWebRequest());
22 |
23 | container.Register(
24 | Classes.FromAssemblyNamed("SharpArchCookbook.Tasks")
25 | .BasedOn(typeof(IHandles<>))
26 | .WithService.FirstInterface().LifestylePerWebRequest());
27 | }
28 | }
29 | }
--------------------------------------------------------------------------------
/Solutions/SharpArchCookbook.Web.Mvc/CastleWindsor/QueryInstaller.cs:
--------------------------------------------------------------------------------
1 | using Castle.MicroKernel.Registration;
2 | using Castle.MicroKernel.SubSystems.Configuration;
3 | using Castle.Windsor;
4 |
5 | namespace SharpArchCookbook.Web.Mvc.CastleWindsor
6 | {
7 | public class QueryInstaller : IWindsorInstaller
8 | {
9 | public void Install(IWindsorContainer container, IConfigurationStore store)
10 | {
11 | container.Register(
12 | Classes.FromAssemblyNamed("SharpArchCookbook.Web.Mvc")
13 | .InNamespace("SharpArchCookbook.Web.Mvc.Controllers.Queries", true)
14 | .WithService.DefaultInterfaces()
15 | .LifestylePerWebRequest());
16 | }
17 | }
18 | }
--------------------------------------------------------------------------------
/Solutions/SharpArchCookbook.Web.Mvc/CastleWindsor/RepositoryInstaller.cs:
--------------------------------------------------------------------------------
1 | using Castle.MicroKernel.Registration;
2 | using Castle.MicroKernel.SubSystems.Configuration;
3 | using Castle.Windsor;
4 | using SharpArch.Domain.PersistenceSupport;
5 | using SharpArch.NHibernate;
6 | using SharpArch.NHibernate.Contracts.Repositories;
7 |
8 | namespace SharpArchCookbook.Web.Mvc.CastleWindsor
9 | {
10 | public class RepositoryInstaller : IWindsorInstaller
11 | {
12 | public void Install(IWindsorContainer container, IConfigurationStore store)
13 | {
14 | AddGenericRepositoriesTo(container);
15 | AddCustomRepositoriesTo(container);
16 | }
17 |
18 | private static void AddCustomRepositoriesTo(IWindsorContainer container)
19 | {
20 | container.Register(
21 | Classes.FromAssemblyNamed("SharpArchCookbook.Infrastructure")
22 | .BasedOn(typeof(IRepositoryWithTypedId<,>))
23 | .WithService.DefaultInterfaces().LifestylePerWebRequest());
24 | }
25 |
26 | private static void AddGenericRepositoriesTo(IWindsorContainer container)
27 | {
28 | container.Register(
29 | Component.For(typeof(INHibernateRepository<>))
30 | .ImplementedBy(typeof(NHibernateRepository<>))
31 | .Named("nhibernateRepositoryType")
32 | .Forward(typeof(IRepository<>))
33 | .LifestylePerWebRequest());
34 |
35 | container.Register(
36 | Component.For(typeof(INHibernateRepositoryWithTypedId<,>))
37 | .ImplementedBy(typeof(LinqRepositoryWithTypedId<,>))
38 | .Named("nhibernateRepositoryWithTypedId")
39 | .Forward(typeof(IRepositoryWithTypedId<,>), typeof(ILinqRepositoryWithTypedId<,>))
40 | .LifestylePerWebRequest());
41 |
42 | container.Register(
43 | Component.For(typeof(ILinqRepository<>))
44 | .ImplementedBy(typeof(LinqRepository<>))
45 | .Named("nhibernateLinqRepositoryType")
46 | .LifestylePerWebRequest());
47 | }
48 | }
49 | }
--------------------------------------------------------------------------------
/Solutions/SharpArchCookbook.Web.Mvc/CastleWindsor/SharpArchInstaller.cs:
--------------------------------------------------------------------------------
1 | using Castle.MicroKernel.Registration;
2 | using Castle.MicroKernel.SubSystems.Configuration;
3 | using Castle.Windsor;
4 | using SharpArch.Domain.Commands;
5 | using SharpArch.Domain.PersistenceSupport;
6 | using SharpArch.NHibernate;
7 |
8 | namespace SharpArchCookbook.Web.Mvc.CastleWindsor
9 | {
10 | public class SharpArchInstaller : IWindsorInstaller
11 | {
12 | public void Install(IWindsorContainer container, IConfigurationStore store)
13 | {
14 | container.Register(
15 | Component.For(typeof(IEntityDuplicateChecker))
16 | .ImplementedBy(typeof(EntityDuplicateChecker))
17 | .Named("entityDuplicateChecker"));
18 |
19 | container.Register(
20 | Component.For(typeof(ISessionFactoryKeyProvider))
21 | .ImplementedBy(typeof(DefaultSessionFactoryKeyProvider))
22 | .Named("sessionFactoryKeyProvider"));
23 |
24 | container.Register(
25 | Component.For(typeof(ICommandProcessor))
26 | .ImplementedBy(typeof(CommandProcessor))
27 | .Named("commandProcessor"));
28 | }
29 | }
30 | }
--------------------------------------------------------------------------------
/Solutions/SharpArchCookbook.Web.Mvc/CastleWindsor/TasksInstaller.cs:
--------------------------------------------------------------------------------
1 | using Castle.MicroKernel.Registration;
2 | using Castle.MicroKernel.SubSystems.Configuration;
3 | using Castle.Windsor;
4 |
5 | namespace SharpArchCookbook.Web.Mvc.CastleWindsor
6 | {
7 | public class TasksInstaller : IWindsorInstaller
8 | {
9 | public void Install(IWindsorContainer container, IConfigurationStore store)
10 | {
11 | container.Register(
12 | Classes.FromAssemblyNamed("SharpArchCookbook.Tasks")
13 | .Pick().Unless(t => t.Namespace.EndsWith("Handlers"))
14 | .WithService.DefaultInterfaces()
15 | .Configure(c => c.LifestylePerWebRequest())
16 | );
17 | }
18 | }
19 | }
--------------------------------------------------------------------------------
/Solutions/SharpArchCookbook.Web.Mvc/Content/img/sharp_arch.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sharparchitecture/Sharp-Architecture-Cookbook/66b2f503ff765558b3a2e76b10a7ad1e2ba413f3/Solutions/SharpArchCookbook.Web.Mvc/Content/img/sharp_arch.jpg
--------------------------------------------------------------------------------
/Solutions/SharpArchCookbook.Web.Mvc/Content/img/sharp_arch_small.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sharparchitecture/Sharp-Architecture-Cookbook/66b2f503ff765558b3a2e76b10a7ad1e2ba413f3/Solutions/SharpArchCookbook.Web.Mvc/Content/img/sharp_arch_small.gif
--------------------------------------------------------------------------------
/Solutions/SharpArchCookbook.Web.Mvc/Controllers/CustomerController.cs:
--------------------------------------------------------------------------------
1 | using SharpArch.Domain.PersistenceSupport;
2 |
3 | namespace SharpArchCookbook.Web.Mvc.Controllers
4 | {
5 | using System;
6 | using System.Linq;
7 | using System.Web.Mvc;
8 |
9 | using Domain;
10 |
11 | using MvcContrib;
12 |
13 | using SharpArch.Domain.Commands;
14 | using SharpArch.NHibernate.Contracts.Repositories;
15 | using SharpArch.NHibernate.Web.Mvc;
16 |
17 | using Tasks.Commands;
18 | using ViewModels;
19 |
20 |
21 | public class CustomerController : Controller
22 | {
23 | private readonly ICommandProcessor commandProcessor;
24 |
25 | private readonly INHibernateRepositoryWithTypedId customerAddressRepository;
26 |
27 | public CustomerController(ICommandProcessor commandProcessor, INHibernateRepositoryWithTypedId customerAddressRepository)
28 | {
29 | this.commandProcessor = commandProcessor;
30 | this.customerAddressRepository = customerAddressRepository;
31 | }
32 |
33 | [Transaction]
34 | [HttpGet]
35 | public ActionResult Index()
36 | {
37 | var tenLittleCustomers = this.customerAddressRepository.GetAll().Take(10).ToList();
38 | return View(tenLittleCustomers);
39 | }
40 |
41 | [Transaction]
42 | [HttpGet]
43 | public ActionResult ChangeAddress(int id)
44 | {
45 | var viewModel = this.customerAddressRepository.Get(id);
46 | return View(viewModel);
47 | }
48 |
49 | [Transaction]
50 | [ValidateAntiForgeryToken]
51 | [HttpPost]
52 | public ActionResult ChangeAddress(Address address)
53 | {
54 | var command = new ChangeCustomerAddressCommand(
55 | address.Id,
56 | address.AddressLine1,
57 | address.AddressLine2,
58 | address.City,
59 | address.StateProvince,
60 | address.PostalCode,
61 | address.CountryRegion);
62 |
63 | this.commandProcessor.Process(command);
64 |
65 | return View(address);
66 | }
67 | }
68 | }
69 |
--------------------------------------------------------------------------------
/Solutions/SharpArchCookbook.Web.Mvc/Controllers/HomeController.cs:
--------------------------------------------------------------------------------
1 | namespace SharpArchCookbook.Web.Mvc.Controllers
2 | {
3 | using System.Web.Mvc;
4 |
5 | public class HomeController : Controller
6 | {
7 | public ActionResult Index()
8 | {
9 | return View();
10 | }
11 |
12 | }
13 | }
14 |
--------------------------------------------------------------------------------
/Solutions/SharpArchCookbook.Web.Mvc/Controllers/ProductModelsController.cs:
--------------------------------------------------------------------------------
1 | namespace SharpArchCookbook.Web.Mvc.Controllers
2 | {
3 | using System.Web.Mvc;
4 | using Domain;
5 | using Domain.Contracts.Tasks;
6 | using MvcContrib;
7 | using SharpArch.NHibernate.Web.Mvc;
8 |
9 | public class ProductModelsController : Controller
10 | {
11 | private readonly IProductModelTasks productModelTasks;
12 |
13 | public ProductModelsController(IProductModelTasks productModelTasks)
14 | {
15 | this.productModelTasks = productModelTasks;
16 | }
17 |
18 | [Transaction]
19 | public ActionResult Index()
20 | {
21 | return View(this.productModelTasks.GetAll());
22 | }
23 |
24 | [Transaction]
25 | [HttpGet]
26 | public ActionResult CreateOrUpdate(int id)
27 | {
28 | return View(this.productModelTasks.Get(id));
29 | }
30 |
31 | [Transaction]
32 | [ValidateAntiForgeryToken]
33 | [HttpPost]
34 | public ActionResult CreateOrUpdate(ProductModel productModel)
35 | {
36 | if (ModelState.IsValid && productModel.IsValid())
37 | {
38 | this.productModelTasks.CreateOrUpdate(productModel);
39 | return this.RedirectToAction(x => x.Index());
40 | }
41 |
42 | return View(productModel);
43 | }
44 |
45 | }
46 | }
47 |
--------------------------------------------------------------------------------
/Solutions/SharpArchCookbook.Web.Mvc/Controllers/ProductsController.cs:
--------------------------------------------------------------------------------
1 | // #001 Using Query Objects
2 |
3 | namespace SharpArchCookbook.Web.Mvc.Controllers
4 | {
5 | using System.Web.Mvc;
6 |
7 | using Queries.Products;
8 | using ViewModels;
9 |
10 | public class ProductsController : Controller
11 | {
12 | private const int DefaultPageSize = 50;
13 |
14 | private readonly IProductsListQuery productsListQuery;
15 |
16 | private readonly IProductsForSaleQuery productsForSaleQuery;
17 |
18 | public ProductsController(IProductsListQuery productsListQuery, IProductsForSaleQuery productsForSaleQuery)
19 | {
20 | this.productsListQuery = productsListQuery;
21 | this.productsForSaleQuery = productsForSaleQuery;
22 | }
23 |
24 | public ActionResult Index(int? page)
25 | {
26 | var viewModel = new ProductsListViewModel
27 | {
28 | Products = this.productsListQuery.GetPagedList(page ?? 1, DefaultPageSize)
29 | };
30 | return View(viewModel);
31 | }
32 |
33 | public ActionResult ForSale()
34 | {
35 | var viewModel = this.productsForSaleQuery.GetProductsForSale();
36 | return View(viewModel);
37 | }
38 | }
39 | }
40 |
--------------------------------------------------------------------------------
/Solutions/SharpArchCookbook.Web.Mvc/Controllers/Queries/Products/IProductsForSaleQuery.cs:
--------------------------------------------------------------------------------
1 | namespace SharpArchCookbook.Web.Mvc.Controllers.Queries.Products
2 | {
3 | using System.Collections.Generic;
4 |
5 | using SharpArchCookbook.Domain;
6 |
7 | public interface IProductsForSaleQuery
8 | {
9 | IList GetProductsForSale();
10 | }
11 | }
--------------------------------------------------------------------------------
/Solutions/SharpArchCookbook.Web.Mvc/Controllers/Queries/Products/IProductsListQuery.cs:
--------------------------------------------------------------------------------
1 | // #001 Using Query Objects
2 |
3 | namespace SharpArchCookbook.Web.Mvc.Controllers.Queries.Products
4 | {
5 | using MvcContrib.Pagination;
6 | using ViewModels;
7 |
8 | public interface IProductsListQuery
9 | {
10 | IPagination GetPagedList(int page, int size);
11 | }
12 | }
13 |
--------------------------------------------------------------------------------
/Solutions/SharpArchCookbook.Web.Mvc/Controllers/Queries/Products/ProductsForSaleQuery.cs:
--------------------------------------------------------------------------------
1 | namespace SharpArchCookbook.Web.Mvc.Controllers.Queries.Products
2 | {
3 | using System;
4 | using System.Collections.Generic;
5 |
6 | using SharpArch.NHibernate;
7 |
8 | using SharpArchCookbook.Domain;
9 |
10 | public class ProductsForSaleQuery : NHibernateQuery, IProductsForSaleQuery
11 | {
12 | public IList GetProductsForSale()
13 | {
14 | return Session.QueryOver()
15 | .Where(x => x.SellEndDate > new DateTime(2003, 5, 30))
16 | .OrderBy(x => x.Name).Asc
17 | .List();
18 | }
19 | }
20 | }
--------------------------------------------------------------------------------
/Solutions/SharpArchCookbook.Web.Mvc/Controllers/Queries/Products/ProductsListQuery.cs:
--------------------------------------------------------------------------------
1 | // #001 Using Query Objects
2 |
3 | namespace SharpArchCookbook.Web.Mvc.Controllers.Queries.Products
4 | {
5 | using Domain;
6 | using MvcContrib.Pagination;
7 | using NHibernate.Transform;
8 | using SharpArch.NHibernate;
9 | using ViewModels;
10 |
11 | public class ProductsListQuery : NHibernateQuery, IProductsListQuery
12 | {
13 | public IPagination GetPagedList(int page, int size)
14 | {
15 | var query = Session.QueryOver().OrderBy(x => x.Name).Asc;
16 |
17 | var count = query.ToRowCountQuery();
18 | var totalCount = count.FutureValue();
19 |
20 | var firstResult = (page - 1) * size;
21 |
22 | ProductViewModel viewModel = null;
23 | ProductCategory categoryAlias = null;
24 |
25 | var viewModels =
26 | query.JoinAlias(x => x.Category, () => categoryAlias)
27 | .SelectList(list => list
28 | .Select(x => x.Id).WithAlias(() => viewModel.Id)
29 | .Select(x => x.Name).WithAlias(() => viewModel.Name)
30 | .Select(x => x.ProductNumber).WithAlias(() => viewModel.ProductNumber)
31 | .Select(x => x.ListPrice).WithAlias(() => viewModel.ListPrice)
32 | .Select(x => x.SellStartDate).WithAlias(() => viewModel.SellEndDate)
33 | .Select(x => x.SellEndDate).WithAlias(() => viewModel.SellEndDate)
34 |
35 | // Flattening the object graph
36 | .Select(x => categoryAlias.Name).WithAlias(() => viewModel.CategoryName))
37 | .TransformUsing(Transformers.AliasToBean(typeof(ProductViewModel)))
38 | .Skip(firstResult)
39 | .Take(size)
40 | .Future();
41 |
42 | return new CustomPagination(viewModels, page, size, totalCount.Value);
43 | }
44 | }
45 | }
46 |
--------------------------------------------------------------------------------
/Solutions/SharpArchCookbook.Web.Mvc/Controllers/RouteRegistrar.cs:
--------------------------------------------------------------------------------
1 | namespace SharpArchCookbook.Web.Mvc.Controllers
2 | {
3 | using System.Web.Mvc;
4 | using System.Web.Routing;
5 |
6 | public class RouteRegistrar
7 | {
8 | public static void RegisterRoutesTo(RouteCollection routes)
9 | {
10 | routes.IgnoreRoute("{resource}.axd/{*pathInfo}");
11 | routes.IgnoreRoute("{*favicon}", new { favicon = @"(.*/)?favicon.ico(/.*)?" });
12 |
13 | routes.MapRoute(
14 | "Default", // Route name
15 | "{controller}/{action}/{id}", // URL with parameters
16 | new { controller = "Home", action = "Index", id = UrlParameter.Optional }); // Parameter defaults
17 | }
18 | }
19 | }
20 |
--------------------------------------------------------------------------------
/Solutions/SharpArchCookbook.Web.Mvc/Controllers/ViewModels/AddressChangeFormViewModel.cs:
--------------------------------------------------------------------------------
1 | namespace SharpArchCookbook.Web.Mvc.Controllers.ViewModels
2 | {
3 | using System;
4 | using FluentNHibernate.Data;
5 |
6 | public class AddressChangeFormViewModel
7 | {
8 | public AddressChangeFormViewModel(int addressId)
9 | {
10 | this.PreviousAddressId = addressId;
11 | }
12 |
13 | public int PreviousAddressId { get; set; }
14 |
15 | public string AddressLine1 { get; set; }
16 |
17 | public string AddressLine2 { get; set; }
18 |
19 | public string City { get; set; }
20 |
21 | public string StateProvince { get; set; }
22 |
23 | public string PostalCode { get; set; }
24 | }
25 | }
--------------------------------------------------------------------------------
/Solutions/SharpArchCookbook.Web.Mvc/Controllers/ViewModels/ProductViewModel.cs:
--------------------------------------------------------------------------------
1 | // #001 Using Query Objects
2 |
3 | namespace SharpArchCookbook.Web.Mvc.Controllers.ViewModels
4 | {
5 | using System;
6 | using System.ComponentModel.DataAnnotations;
7 |
8 | public class ProductViewModel
9 | {
10 | public int Id { get; set; }
11 |
12 | public string Name { get; set; }
13 |
14 | public string CategoryName { get; set; }
15 |
16 | public string ProductNumber { get; set; }
17 |
18 | [DisplayFormat(DataFormatString = "{0:C}")]
19 | public double ListPrice { get; set; }
20 |
21 | [DisplayFormat(DataFormatString = "{0:d}")]
22 | public DateTime? SellStartDate { get; set; }
23 |
24 | [DisplayFormat(DataFormatString = "{0:d}")]
25 | public DateTime? SellEndDate { get; set; }
26 | }
27 | }
--------------------------------------------------------------------------------
/Solutions/SharpArchCookbook.Web.Mvc/Controllers/ViewModels/ProductsListViewModel.cs:
--------------------------------------------------------------------------------
1 | // #001 Using Query Objects
2 |
3 | namespace SharpArchCookbook.Web.Mvc.Controllers.ViewModels
4 | {
5 | using MvcContrib.Pagination;
6 |
7 | public class ProductsListViewModel
8 | {
9 | public IPagination Products { get; set; }
10 | }
11 | }
--------------------------------------------------------------------------------
/Solutions/SharpArchCookbook.Web.Mvc/Global.asax:
--------------------------------------------------------------------------------
1 | <%@ Application Codebehind="Global.asax.cs" Inherits="SharpArchCookbook.Web.Mvc.MvcApplication" Language="C#" %>
2 |
--------------------------------------------------------------------------------
/Solutions/SharpArchCookbook.Web.Mvc/Global.asax.cs:
--------------------------------------------------------------------------------
1 | using SharpArchCookbook.Infrastructure.NHibernateMaps;
2 | using SharpArchCookbook.Web.Mvc.Controllers;
3 |
4 | namespace SharpArchCookbook.Web.Mvc
5 | {
6 | using System;
7 | using System.Web.Mvc;
8 | using System.Web.Routing;
9 | using Castle.Windsor;
10 | using Castle.Windsor.Installer;
11 | using CommonServiceLocator.WindsorAdapter;
12 | using log4net.Config;
13 | using Microsoft.Practices.ServiceLocation;
14 | using SharpArch.Domain.Events;
15 | using SharpArch.NHibernate;
16 | using SharpArch.NHibernate.Web.Mvc;
17 | using SharpArch.Web.Mvc.Castle;
18 | using SharpArch.Web.Mvc.ModelBinder;
19 |
20 | ///
21 | /// Represents the MVC Application
22 | ///
23 | ///
24 | /// For instructions on enabling IIS6 or IIS7 classic mode,
25 | /// visit http://go.microsoft.com/?LinkId=9394801
26 | ///
27 | public class MvcApplication : System.Web.HttpApplication
28 | {
29 | private WebSessionStorage webSessionStorage;
30 |
31 | ///
32 | /// Due to issues on IIS7, the NHibernate initialization must occur in Init().
33 | /// But Init() may be invoked more than once; accordingly, we introduce a thread-safe
34 | /// mechanism to ensure it's only initialized once.
35 | /// See http://msdn.microsoft.com/en-us/magazine/cc188793.aspx for explanation details.
36 | ///
37 | public override void Init()
38 | {
39 | base.Init();
40 | this.webSessionStorage = new WebSessionStorage(this);
41 | }
42 |
43 | public static void RegisterGlobalFilters(GlobalFilterCollection filters)
44 | {
45 | filters.Add(new HandleErrorAttribute());
46 | }
47 |
48 | protected void Application_BeginRequest(object sender, EventArgs e)
49 | {
50 | NHibernateInitializer.Instance().InitializeNHibernateOnce(this.InitialiseNHibernateSessions);
51 | }
52 |
53 | protected void Application_Start()
54 | {
55 | XmlConfigurator.Configure();
56 |
57 | ViewEngines.Engines.Clear();
58 |
59 | ViewEngines.Engines.Add(new RazorViewEngine());
60 |
61 | ModelBinders.Binders.DefaultBinder = new SharpModelBinder();
62 |
63 | ModelValidatorProviders.Providers.Add(new ClientDataTypeModelValidatorProvider());
64 |
65 | this.InitializeServiceLocator();
66 |
67 | AreaRegistration.RegisterAllAreas();
68 |
69 | RegisterGlobalFilters(GlobalFilters.Filters);
70 | RouteRegistrar.RegisterRoutesTo(RouteTable.Routes);
71 | }
72 |
73 | ///
74 | /// Instantiate the container and add all Controllers that derive from
75 | /// WindsorController to the container. Also associate the Controller
76 | /// with the WindsorContainer ControllerFactory.
77 | ///
78 | protected virtual void InitializeServiceLocator()
79 | {
80 | IWindsorContainer container = new WindsorContainer();
81 |
82 | container.Install(FromAssembly.This());
83 |
84 | ControllerBuilder.Current.SetControllerFactory(new WindsorControllerFactory(container));
85 |
86 | var windsorServiceLocator = new WindsorServiceLocator(container);
87 | DomainEvents.ServiceLocator = windsorServiceLocator;
88 | ServiceLocator.SetLocatorProvider(() => windsorServiceLocator);
89 | }
90 |
91 | private void InitialiseNHibernateSessions()
92 | {
93 | NHibernateSession.ConfigurationCache = new NHibernateConfigurationFileCache();
94 |
95 | NHibernateSession.Init(
96 | this.webSessionStorage,
97 | new[] { Server.MapPath("~/bin/SharpArchCookbook.Infrastructure.dll") },
98 | new AutoPersistenceModelGenerator().Generate(),
99 | Server.MapPath("~/NHibernate.config"));
100 | }
101 | }
102 | }
--------------------------------------------------------------------------------
/Solutions/SharpArchCookbook.Web.Mvc/NHibernate.config:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | Server=localhost;Initial Catalog=AdventureWorksLT;Integrated Security=SSPI;
5 | AdventureWorksLT.SalesLT
6 | NHibernate.Dialect.MsSql2008Dialect
7 | NHibernate.Connection.DriverConnectionProvider
8 | NHibernate.Driver.SqlClientDriver
9 | true
10 | auto
11 | 500
12 |
13 |
15 | update
16 |
17 |
20 |
21 |
22 |
--------------------------------------------------------------------------------
/Solutions/SharpArchCookbook.Web.Mvc/Properties/AssemblyInfo.cs:
--------------------------------------------------------------------------------
1 | using System.Reflection;
2 |
3 | // General Information about an assembly is controlled through the following
4 | // set of attributes. Change these attribute values to modify the information
5 | // associated with an assembly.
6 | [assembly: AssemblyTitle("SharpArchCookbook.Web")]
7 | [assembly: AssemblyDescription("")]
8 | [assembly: AssemblyConfiguration("")]
9 |
--------------------------------------------------------------------------------
/Solutions/SharpArchCookbook.Web.Mvc/README.txt:
--------------------------------------------------------------------------------
1 | --------------------------------------------
2 | -- 2.0 Release Candidate
3 | --------------------------------------------
4 |
5 | This is a release candidate, use at your own risk. Please switch to the 1.9.6.0 for production releases:
6 |
7 | $ git checkout 1.9.6.0
8 |
9 | --------------------------------------------
10 | -- Templify
11 | --------------------------------------------
12 |
13 | We no longer support the use of the Visual Studio templates for installation of S#arp Architecture. With version 2.0, we have dropped support for Visual Studio 2008 altogether. To learn how to get a S#arp Architecture solution up and running, please go to http://blog.sharparchitecture.net/post/Using-Templify-to-create-a-new-Sarp-Architecture-solution.aspx
14 |
15 | --------------------------------------------
16 | -- Downloads
17 | --------------------------------------------
18 |
19 | Downloads can always be found here: https://github.com/sharparchitecture/Sharp-Architecture/downloads
20 |
21 | --------------------------------------------
22 | -- Building S#arp Architecture
23 | --------------------------------------------
24 |
25 | Perform the following command in GitBash:
26 |
27 | $ git clone git@github.com:sharparchitecture/Sharp-Architecture.git
28 | $ git submodule init
29 | $ git submodule update
30 |
31 | Now you should have the latest development branch of SA 2.0 and submodules.
32 |
33 | Now go to /Build and run the Build.cmd or BuildAndPackage.cmd files to build S#arp Architecture
34 |
35 | --------------------------------------------
36 | -- Documentation and Assemblies
37 | --------------------------------------------
38 |
39 | * /Artefacts/Documentation/: Contains a link to comprehensive, online documentation at http://wiki.sharparchitecture.net/, and a diagram of what a S#arp Architecture project looks like.
40 |
41 | * /Drops//: Holds released SharpArch assemblies - it does not include the third party library's that are needed by S#arp Architecture. You must run the BuildAndPackage.cmd file first.
42 |
43 | --------------------------------------------
44 | -- How's this release organized?
45 | --------------------------------------------
46 |
47 | * /Artefacts/: Contains various artefacts for the project
48 |
49 | * /Build/: Contains the .cmd files needed to build the solution
50 |
51 | * /ReferencedAssemblies/: Contains all of the required 3rd party assemblies.
52 |
53 | * /RequiredPackages/: Contains the required tools needed to build S#arp Architecture.
54 |
55 | * /License.txt: I'll let you guess what this is.
56 |
57 | * /Solutions/: This contains all of the source code in their various projects.
58 |
59 | * /VersionHistory.txt: Details version numbers of dependencies, changes since previous releases, upgrade details, and a roadmap of what's coming.
60 |
61 |
--------------------------------------------------------------------------------
/Solutions/SharpArchCookbook.Web.Mvc/Views/Customer/ChangeAddress.cshtml:
--------------------------------------------------------------------------------
1 | @using SharpArchCookbook.Domain;
2 | @using MvcContrib.UI.Grid;
3 |
4 | @model Address
5 |
6 | @{
7 | ViewBag.Title = "Address Change";
8 | Layout = "~/Views/Shared/_Layout.cshtml";
9 | }
10 |
11 | @using (Html.BeginForm()) {
12 | @Html.AntiForgeryToken()
13 |
14 |
15 |
16 | @Html.LabelFor(Model => Model.Id)
17 | @Html.DisplayFor(Model => Model.Id)
18 |
19 |
20 | @Html.LabelFor(Model => Model.AddressLine1)
21 | @Html.TextBoxFor(Model => Model.AddressLine1)
22 | @Html.ValidationMessageFor(Model => Model.AddressLine1)
23 |
24 |
25 | @Html.LabelFor(Model => Model.AddressLine2)
26 | @Html.TextBoxFor(Model => Model.AddressLine2)
27 | @Html.ValidationMessageFor(Model => Model.AddressLine2)
28 |
29 |
30 | @Html.LabelFor(Model => Model.City)
31 | @Html.TextBoxFor(Model => Model.City)
32 | @Html.ValidationMessageFor(Model => Model.City)
33 |
34 |
35 | @Html.LabelFor(Model => Model.StateProvince)
36 | @Html.TextBoxFor(Model => Model.StateProvince)
37 | @Html.ValidationMessageFor(Model => Model.StateProvince)
38 |
39 |
40 | @Html.LabelFor(Model => Model.PostalCode)
41 | @Html.TextBoxFor(Model => Model.PostalCode)
42 | @Html.ValidationMessageFor(Model => Model.PostalCode)
43 |
44 |
45 | @Html.LabelFor(Model => Model.CountryRegion)
46 | @Html.TextBoxFor(Model => Model.CountryRegion)
47 | @Html.ValidationMessageFor(Model => Model.CountryRegion)
48 |
49 |
50 | @Html.SubmitButton("btnSave", "Save")
51 |
52 |
53 |
54 | }
--------------------------------------------------------------------------------
/Solutions/SharpArchCookbook.Web.Mvc/Views/Customer/Index.cshtml:
--------------------------------------------------------------------------------
1 | @using SharpArchCookbook.Domain;
2 | @using MvcContrib.UI.Grid;
3 |
4 | @model IList
5 | @{
6 | ViewBag.Title = "Addresses";
7 | Layout = "~/Views/Shared/_Layout.cshtml";
8 | }
9 |
10 | @Html.Grid(Model).Columns(column =>
11 | {
12 | column.For(x => x.Id);
13 | column.For(x => x.AddressLine1);
14 | column.For(x => x.AddressLine2);
15 | column.For(x => x.City);
16 | column.For(x => x.StateProvince);
17 | column.For(x => x.PostalCode);
18 | column.For(x => (Html.ActionLink(a => a.ChangeAddress(x.Id), "Edit"))).Named("Edit");
19 | })
--------------------------------------------------------------------------------
/Solutions/SharpArchCookbook.Web.Mvc/Views/Home/Index.cshtml:
--------------------------------------------------------------------------------
1 | @{
2 | ViewBag.Title = "Home";
3 | Layout = "~/Views/Shared/_Layout.cshtml";
4 | }
5 |
6 | S#arp Architecture Project
7 | What next?
8 |
9 | Your S#arp Architecture 2.0RC project is now setup and ready to go. This release is built on the RTM verion of ASP.NET MVC 3 and .NET 4. The only tasks remaining
10 | are to:
11 |
12 |
13 | Create your database and set the connection string
14 | within SharpCookbook.Web/NHibernate.config
15 |
16 |
17 | Optionally, modify the Fluent NHibernate preferences within SharpCookbook.Data.NHibernateMaps.GetConventions()
18 | if you don't like the default settings. There's lots of terrific info about Fluent NHibernate
19 | at http://wiki.fluentnhibernate.org/show/HomePage .
20 |
21 |
22 | Open SharpCookbook.Tests.dll via NUnit and make sure all the tests are turning green.
23 |
24 |
25 | Add your first entity with CRUD scaffolding via /Code Generation/CrudScaffolding/ScaffoldingGeneratorCommand.tt.
26 | (If you include a namespace, be sure to setup the appropriate view area within
27 | SharpCookbook.Web.Controllers.RouteRegistrar.RegisterRoutesTo() after the scaffolding generator has completed.)
28 |
29 |
30 |
31 |
32 | If you need direction on what to do next, take a look at the documentation found in the
33 | /docs folder of the S#arp Architecture release package which provides a solid tutorial.
34 | You can also ask for assitance and guidance on the
35 | S#arp Architecture discussion boards .
36 |
37 |
--------------------------------------------------------------------------------
/Solutions/SharpArchCookbook.Web.Mvc/Views/ProductModels/CreateOrUpdate.cshtml:
--------------------------------------------------------------------------------
1 | @using SharpArchCookbook.Domain;
2 | @using MvcContrib.UI.Grid;
3 |
4 | @model ProductModel
5 |
6 | @{
7 | ViewBag.Title = "ProductModel Edit";
8 | Layout = "~/Views/Shared/_Layout.cshtml";
9 | }
10 |
11 | @using (Html.BeginForm()) {
12 | @Html.AntiForgeryToken()
13 |
14 |
15 |
16 | @Html.LabelFor(Model => Model.Id)
17 | @Html.DisplayFor(Model => Model.Id)
18 |
19 |
20 | @Html.LabelFor(Model => Model.Name)
21 | @Html.TextBoxFor(Model => Model.Name)
22 | @Html.ValidationMessageFor(Model => Model.Name)
23 |
24 |
25 | @Html.LabelFor(Model => Model.ModifiedDate)
26 | @Html.DisplayFor(Model => Model.ModifiedDate)
27 |
28 |
29 | @Html.SubmitButton("btnSave", "Save")
30 |
31 |
32 |
33 | }
--------------------------------------------------------------------------------
/Solutions/SharpArchCookbook.Web.Mvc/Views/ProductModels/Index.cshtml:
--------------------------------------------------------------------------------
1 | @using SharpArchCookbook.Domain;
2 | @using MvcContrib.UI.Grid;
3 |
4 | @model IList
5 | @{
6 | ViewBag.Title = "ProductModels";
7 | Layout = "~/Views/Shared/_Layout.cshtml";
8 | }
9 |
10 | @Html.Grid(Model).AutoGenerateColumns().Columns(extraCols =>
11 | {
12 | extraCols.For(x => (Html.ActionLink(a => a.CreateOrUpdate(x.Id), "Edit")))
13 | .Named("Edit");
14 | })
15 |
16 | @(Html.ActionLink(a => a.CreateOrUpdate(0), "Add"))
--------------------------------------------------------------------------------
/Solutions/SharpArchCookbook.Web.Mvc/Views/Products/ForSale.cshtml:
--------------------------------------------------------------------------------
1 | @using MvcContrib.UI.Grid;
2 | @using SharpArchCookbook.Domain;
3 |
4 | @model IList
5 | @{
6 | ViewBag.Title = "Products For Sale";
7 | Layout = "~/Views/Shared/_Layout.cshtml";
8 | }
9 |
10 | @Html.Grid(Model.Take(25)).Columns(column => {
11 | column.For(product => product.Id);
12 | column.For(product => product.Name);
13 | column.For(product => product.SellEndDate.ToShortDateString()).Named("Sell End Date");
14 | })
--------------------------------------------------------------------------------
/Solutions/SharpArchCookbook.Web.Mvc/Views/Products/Index.cshtml:
--------------------------------------------------------------------------------
1 | @using MvcContrib.UI.Grid;
2 | @model SharpArchCookbook.Web.Mvc.Controllers.ViewModels.ProductsListViewModel
3 | @{
4 | ViewBag.Title = "Products";
5 | Layout = "~/Views/Shared/_Layout.cshtml";
6 | }
7 |
8 | @Html.Grid(Model.Products).AutoGenerateColumns()
9 |
10 |
11 | @if(Model.Products.HasPreviousPage) {
12 | @(Html.ActionLink(c => c.Index(Model.Products.PageNumber - 1), "Previous"))
13 | }
14 |
15 | @if(Model.Products.HasNextPage) {
16 | @(Html.ActionLink(c => c.Index(Model.Products.PageNumber + 1), "Next"))
17 | }
18 |
19 |
20 |
21 | Page @Model.Products.PageNumber of @Model.Products.PageSize
22 |
--------------------------------------------------------------------------------
/Solutions/SharpArchCookbook.Web.Mvc/Views/Shared/_Layout.cshtml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 | @ViewBag.Title
14 |
15 |
16 |
17 |
18 |
19 |
20 |
21 |
22 |
23 |
24 |
SharpCookbook Pages
25 |
26 | @(Html.ActionLink(c => c.Index(), "Home"))
27 | @(Html.ActionLink(c => c.Index(), "Customers"))
28 | @(Html.ActionLink(c => c.Index(null), "Products"))
29 | @(Html.ActionLink(c => c.ForSale(), "Products For Sale"))
30 | @(Html.ActionLink(c => c.Index(), "ProductModels"))
31 |
32 |
33 |
34 |
35 |
36 | @RenderBody()
37 |
38 |
39 |
40 |
41 |
42 |
43 |
44 |
45 |
46 |
47 |
48 |
49 |
50 |
51 |
--------------------------------------------------------------------------------
/Solutions/SharpArchCookbook.Web.Mvc/Views/Web.config:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
18 |
19 |
20 |
21 |
22 |
23 |
24 |
25 |
26 |
27 |
28 |
29 |
30 |
31 |
32 |
33 |
34 |
35 |
36 |
43 |
48 |
49 |
50 |
51 |
52 |
53 |
54 |
55 |
56 |
57 |
58 |
59 |
60 |
61 |
62 |
--------------------------------------------------------------------------------
/Solutions/SharpArchCookbook.Web.Mvc/Web.config:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
18 |
19 |
20 |
21 |
22 |
23 |
24 |
25 |
26 |
27 |
28 |
29 |
30 |
31 |
32 |
33 |
34 |
35 |
36 |
37 |
38 |
39 |
40 |
41 |
42 |
43 |
44 |
45 |
46 |
47 |
48 |
49 |
50 |
51 |
52 |
53 |
54 |
55 |
56 |
57 |
58 |
59 |
60 |
61 |
--------------------------------------------------------------------------------
/Solutions/SharpArchCookbook.Web.Mvc/packages.config:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
18 |
--------------------------------------------------------------------------------
/Solutions/SharpArchCookbook.sln:
--------------------------------------------------------------------------------
1 | Microsoft Visual Studio Solution File, Format Version 12.00
2 | # Visual Studio 2012
3 | Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Domain", "Domain", "{D2AD5B1A-C8C2-487F-89CA-04900885F946}"
4 | EndProject
5 | Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Infrastructure", "Infrastructure", "{E6A458E6-AF91-4FB7-9224-5FC5E00C3996}"
6 | EndProject
7 | Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Tasks", "Tasks", "{BDC8840A-C964-4EFB-8778-9BC01F516491}"
8 | EndProject
9 | Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Presentation", "Presentation", "{D5E689AA-BE7E-4F5F-AF51-03F71C6C31B2}"
10 | EndProject
11 | Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Specs", "Specs", "{2322D330-1A60-4F79-B553-53DED803A098}"
12 | EndProject
13 | Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "SharpArchCookbook.Domain", "SharpArchCookbook.Domain\SharpArchCookbook.Domain.csproj", "{8DEF56CD-601E-443C-9DCE-C4EC54C0B6A6}"
14 | EndProject
15 | Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "SharpArchCookbook.Infrastructure", "SharpArchCookbook.Infrastructure\SharpArchCookbook.Infrastructure.csproj", "{9544D94B-9B6E-4B61-8A09-88382205BF86}"
16 | EndProject
17 | Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "SharpArchCookbook.Tasks", "SharpArchCookbook.Tasks\SharpArchCookbook.Tasks.csproj", "{C9AAC14B-E695-4508-83B7-ACB8FC5A7284}"
18 | EndProject
19 | Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "MSpecTests.SharpArchCookbook", "MSpecTests.SharpArchCookbook\MSpecTests.SharpArchCookbook.csproj", "{F63E0957-B60B-47A3-96BB-76DC243D0C8A}"
20 | EndProject
21 | Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "SharpArchCookbook.Web.Mvc", "SharpArchCookbook.Web.Mvc\SharpArchCookbook.Web.Mvc.csproj", "{39613BA0-1206-4A4B-A16A-C1F2A22D1267}"
22 | EndProject
23 | Global
24 | GlobalSection(SolutionConfigurationPlatforms) = preSolution
25 | Debug|Any CPU = Debug|Any CPU
26 | Release|Any CPU = Release|Any CPU
27 | EndGlobalSection
28 | GlobalSection(ProjectConfigurationPlatforms) = postSolution
29 | {8DEF56CD-601E-443C-9DCE-C4EC54C0B6A6}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
30 | {8DEF56CD-601E-443C-9DCE-C4EC54C0B6A6}.Debug|Any CPU.Build.0 = Debug|Any CPU
31 | {8DEF56CD-601E-443C-9DCE-C4EC54C0B6A6}.Release|Any CPU.ActiveCfg = Release|Any CPU
32 | {8DEF56CD-601E-443C-9DCE-C4EC54C0B6A6}.Release|Any CPU.Build.0 = Release|Any CPU
33 | {9544D94B-9B6E-4B61-8A09-88382205BF86}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
34 | {9544D94B-9B6E-4B61-8A09-88382205BF86}.Debug|Any CPU.Build.0 = Debug|Any CPU
35 | {9544D94B-9B6E-4B61-8A09-88382205BF86}.Release|Any CPU.ActiveCfg = Release|Any CPU
36 | {9544D94B-9B6E-4B61-8A09-88382205BF86}.Release|Any CPU.Build.0 = Release|Any CPU
37 | {C9AAC14B-E695-4508-83B7-ACB8FC5A7284}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
38 | {C9AAC14B-E695-4508-83B7-ACB8FC5A7284}.Debug|Any CPU.Build.0 = Debug|Any CPU
39 | {C9AAC14B-E695-4508-83B7-ACB8FC5A7284}.Release|Any CPU.ActiveCfg = Release|Any CPU
40 | {C9AAC14B-E695-4508-83B7-ACB8FC5A7284}.Release|Any CPU.Build.0 = Release|Any CPU
41 | {F63E0957-B60B-47A3-96BB-76DC243D0C8A}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
42 | {F63E0957-B60B-47A3-96BB-76DC243D0C8A}.Debug|Any CPU.Build.0 = Debug|Any CPU
43 | {F63E0957-B60B-47A3-96BB-76DC243D0C8A}.Release|Any CPU.ActiveCfg = Release|Any CPU
44 | {F63E0957-B60B-47A3-96BB-76DC243D0C8A}.Release|Any CPU.Build.0 = Release|Any CPU
45 | {39613BA0-1206-4A4B-A16A-C1F2A22D1267}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
46 | {39613BA0-1206-4A4B-A16A-C1F2A22D1267}.Debug|Any CPU.Build.0 = Debug|Any CPU
47 | {39613BA0-1206-4A4B-A16A-C1F2A22D1267}.Release|Any CPU.ActiveCfg = Release|Any CPU
48 | {39613BA0-1206-4A4B-A16A-C1F2A22D1267}.Release|Any CPU.Build.0 = Release|Any CPU
49 | EndGlobalSection
50 | GlobalSection(SolutionProperties) = preSolution
51 | HideSolutionNode = FALSE
52 | EndGlobalSection
53 | GlobalSection(NestedProjects) = preSolution
54 | {8DEF56CD-601E-443C-9DCE-C4EC54C0B6A6} = {D2AD5B1A-C8C2-487F-89CA-04900885F946}
55 | {9544D94B-9B6E-4B61-8A09-88382205BF86} = {E6A458E6-AF91-4FB7-9224-5FC5E00C3996}
56 | {C9AAC14B-E695-4508-83B7-ACB8FC5A7284} = {BDC8840A-C964-4EFB-8778-9BC01F516491}
57 | {39613BA0-1206-4A4B-A16A-C1F2A22D1267} = {D5E689AA-BE7E-4F5F-AF51-03F71C6C31B2}
58 | {F63E0957-B60B-47A3-96BB-76DC243D0C8A} = {2322D330-1A60-4F79-B553-53DED803A098}
59 | EndGlobalSection
60 | EndGlobal
61 |
--------------------------------------------------------------------------------
/Solutions/SharpArchCookbook.sln.DotSettings.user:
--------------------------------------------------------------------------------
1 |
2 | Never
3 | True
--------------------------------------------------------------------------------
/Solutions/nuget.config:
--------------------------------------------------------------------------------
1 |
2 | ..\Packages
3 |
--------------------------------------------------------------------------------