.netTiers 2.2

Download .netTiers Here

– [FIX] Corrected default value in column for NewId(), from new Guid(), to Guid.NewGuid()
– [FIX] Added locks throughout EntityFactory to make thread-safe (contrib Taliesin)
– [FIX] Corrected nUnit assembly output library path when using another path other than references.

– [FIX] Corrected Include="***.user.*" to use an Exclude="***.csproj.user" as well. (contrib GRAW)

– [FIX] Escaped ..\References, for CodeSmith 3.2.x users in vs2005.project.cst
– [FIX] Corrected reference assembly copying from template root to library path.
– [ENH] EntityDropDownList now exposes Validate method and sets ValidationGroup for the embedded RequiredValidator

– [ENH] Created Facade for DAL.Bases.MyEntityParameterBuilder, which now lives in in the root DAL namespace. ex. OrdersQuery query = new OrdersQuery(); query.AppendIsNotNull(OrdersColumns.OrderId); DataRepository.OrdersService.Find(query);
– [ENH] ***MINOR POTENTIAL BREAKING CHANGE*** Changed method signature for SqlParameterFilterCollection in DAL and Service methods to IParamterFilterCollection (You can now just pass in a ParameterBuilder type, and the engine will call GetParameters() automatically). No consumption of the implementation should break unless your bound to the SqlParameterFilterCollection by a 3rd party.
– [ENH] ***MINOR POTENTIAL BREAKING CHANGE*** Made unit tests atomic for any data calls. to do so, i had to update the CreateMock() and UpdateMock() to signatures of CreateMock(TransactionManager tm) UpdateMock(TransactionManager tm, MyEntity mock), so you will have to update the two methods in your class user files.
– [ENH] ***MINOR POTENTIAL BREAKING CHANGE*** Removed junction tables from doing any data access other than inserts. It too dificult to determine and validate fk constraint checks. So if you want them in your tests, then just add them in your user code unit test file.
– [FIX] Corrected DeepSave issue whereby if deleting an entity and it’s children, the operations of the children execute before the entity (contrib Trinity)
– [FIX] Corrected issue with #PageIndex temp table name collisions when running several find methods altogether in the same tran. (contrib GRAW)
– [FIX] Change Replace to Remove() column from string, in DataProvider Find method (contrib mfalcon)
– [ENH] Fixed EntLibVersion for webConfigAtlas, and Unit Tests. Also added PublicTokenKey to string.
– [ENH] Modified vs project files to specify EntLibVersion as well.
– [ENH] Enabled new file format to be auto included anywhere in all projects. Any file ending with *.user.* ex MyCustomClass.user.cs
– [ENH] Made it easier to do strongly typed queries, now in the root DAL namespace, and using {0}Query format, ex. MyEntityQuery.Append();
– [ENH] Modified ParameterizedSqlFilterBuilder to not require the call of GetParameters() to create the filter. Now you can just pass the builder to the Find method and it will automatically create the filter. (contrib ToddMoon)
– [ENH] Enabled Library Path to be configurable from project root, ex. References
– [FIX] Corrected Unit Test FK, and disabled INSERT/UPPDATE/DELETE tests for Junction Tables.
– [FIX] Fixed report to display when using a relative output path
– [FIX] Removed Warning by adding comments to public static TranMan in UnitTests
– [FIX] Removed warning of count never being used in UnitTests
– [ENH] Added NoWarn numbers to disable common warning for all templates. Now easier to find errors for developers. (only supported in CodeSmith 4.1+)
– [FIX] Corrected UnitTest.dll.config file to include the correct entlib.config file.

– [FIX] Check _originalData is not null when CancelingChanges() in an entity. contrib(DanDBD)

– [FIX] Updated WebConfig so that it has the correct reference of the EntLib File Configuration Source

– [FIX] M2M deep save support for composite keys
– [FIX] Corrected Threading issue for high traffic data access index out of range exceptions (load of procs was not completing prior to a subsequent request)
– [FIX] Out of Range Exception in GetCorrespondingRelationship, corrected logic
– [ENH] Removed several warnings
– [ENH] Added CustomMethods user file to be included so that users can run custom logic against the generation.
– [ENH] CommonSqlCode is now a partial class
– [FIX] Corrected 1:1 relationship UnitTest transaction failure (contrib JJMartin)

– [ENH] Added support to SqlParameter when used to configure ExpressionBuilder to be able to apply formatting via Format property.

– [FIX] Updated SqlEntityViewProviderBase custom procedure parameters to use col.Name (contrib graw)
– [ENH] Added Entity property to the strong type repeater, to be able to access deeploaded properties.

– [ENH] Added new UsePascalCasing property to allow for different casing styles i.e. None/Style1(Original pre 552)/Style2(Post 552)
– [FIX] Updated GetCSType method to handle nullable option correctly (contrib JJmartin)

– [FIX] Fixed casing of IndexId column used in GetPaged temp table (contrib nosferatus)
– [FIX] Updated calls in factory method of EntityInstanceBase to use GetFieldName rather than old method. With revisions after 552 this was causing XML warnings.

– [ENH] Preceed EnumTextValue with "@" to allow strings with escape characters

– [NEW] Added SafeNamePrefix option to enable handling of names that would be invalid in C#. Any unsafe names (eg. C# keywords, only numbers) will be made safe and prefixed with the supplied string.
– [FIX] Corrected calls in EntityViewBase to the GetVariableName method to use GetFieldName instead to take advantage of the refactored naming methods.

– [ENH] Added EntLib v3.1 libraries (use new enum option v3_1)
– [FIX] Fixed issue with EntityInstanceBase.generated.cst that was causing the "inconsistent line endings" warning in Visual Studio

– [FIX] Updated entity constructor parameters to use the GetFieldName function

– [ENH] Added CausesValidation, LookFor text and Which text to GridViewSearchPanel (contrib Ryan Anderson)
– [FIX] Stop ToLowerExceptCamelCase throwing exception when input is blank

– [FIX] Removed ‘ResponseEncoding="UTF-8"’ from VS solution file as it confuses VS selector.
– [FIX] Reinstated code to output custom stored proc name in providerbase

– [REF] Major refactoring to naming functions. See http://community.codesmithtools.com/forums/t/6425.aspx (contrib tselke)
– [NEW] New NameConversion option so you can select Alias, Mapping or None (default) (contrib tselke)
– [NEW] New StrippedTableSuffixes option to remove user defined suffixes from table names (contrib tselke)
– [REF] Excluded TODO comments from generated output
– [REF] Corrected some XML comments in EntityGridView
– [REF] Added ‘ResponseEncoding="UTF-8"’ to all template pages where it was missing

– [FIX] StoredProceduresXml.cst was not enclosing all columns in square brackets which caused an issue with column names that contained spaces (contrib ToddMoon)

– [FIX] Styling AjaxToolkit CalendarExtender that fixes transparent background.

– [FIX] Fixed calendar date format when AjaxToolkit CalendarExtender is used.

– [FIX] Maintaining GridViewSearchPanel State when GridView’s RowCommand event raised.
– [FIX] Fixed ‘Object not set to an instance’ exception in HyperlinkField databound control.

– [FIX] Changing hyperlinks to text when exporting to Excel (contrib. basolutions).
– [ENH] Ability to add additional columns to be exported to Excel when exporting data from EntityGridView.
– [ENH] Added two new events ExcelBeforeFormat and ExcelAfterFormat that could be used to apply formatting at a time of export.
– [FIX] Fix GridViewSearchPanel issue, loosing its’ state at certain conditions.

– [FIX] Fixed key collusion in certain conditions when configuring ManyToManyRelationship control in the [Entity]Fields.ascx page.

– [FIX] Handling AppendIsNull/AppendNotIsNull builder expressions when used in typed datasources.

– [FIX] Fixed GetPascalCaseName so it returns correct values. Also enhanced to cater for capitalization and use of "-" as a seperator.

– [NEW] Added HyperlinkField data-bound control that supports complex objects via DataContainer property.

– [ENH] Added expression group support used within typed datasource.
– [FIX] Changed EntLib default to v2 so its matches a valid enum value.

– [ENH] Added support for the AppendRange builder expression when used within typed datasource.
– [ENH] Updated HideButton in FormUtilBase to use Control rather than Button so images can be used. (contrib sdavison)
– [FIX] Added System.Collections.Specialized namespace to SqlParameter.cs. (contrib mscolaro)
– [FIX] Fixed a couple of errors in the GenericClient. See http://community.codesmithtools.com/forums/thread/19946.aspx (contrib pubb)

– [ENH] See http://community.codesmithtools.com/forums/thread/24246.aspx and http://community.codesmithtools.com/forums/thread/24260.aspx for further info on the following:
– [ENH] New option to allow selection of EntLib2 or EntLib3 libraries. (contrib tselke)
– [ENH] The mapping.config file now allows you to specify <View/> elements, which are identicle to <Table/> elements, except that they can only contain <Column/> elements. (contrib tselke)
– [FIX] Handling of method names generated by indexes with many/long fields improved to limit overall length o 128 chars to stop sql error. (contrib tselke)
– [FIX] When sorting a list with no sort specified, the default was to use the textual name of the appropriate list’s first column enum entry instead of the actual table/view column name stored in the attribute. It will now use the appropriate table/view column name from the attribute. (contrib tselke)
– [FIX] References to Environment.NewLine prefixed with full namespace to avoid conflicts with an entity named "Environment". (contrib tselke)
– [FIX] Various bug fixes and refactoring to internal methods including GetPascalCaseName, GetAliasName, GetCleanName, GetPropertyName, GetDBColumnName, GetPrivateName, GetSqlParameterXmlNode, GetKeysName. (contrib tselke)
– [ENH] Several enhancements to unit tests to improve test data generated. (contrib tselke)
– [FIX] Removed entlib.config.cst which was replaced by specific v2 and v3 versions in 553

– [FIX] Added comments to several public properties and methods to eliminate compiler warnings.

– [ENH] Added expression builder support for typed datasource based off views.

– [ENH] Ability to specify entity typed expressions using SqlEntityExpressionBuilder.
– [ENH] Added support for SessionField and QueryStringField when using typed filter expression within typed object datasources.

– [FIX] Drop all procedure option made backwards compatible by reverting IncludeDrop property to a Boolean and adding new property DropStyle (Entity/All)
– [ENH] Added new EntityKeyFormat property to allow value to be user defined. Based on contrib by lampous. More info http://community.codesmithtools.com/forums/thread/23559.aspx

– [FIX] Fixing object reference set to null exception in WebAdminSiteName property, when database isn’t specified (contrib. Taliesin)
– [FIX] Hard-coded link bug fix.

– [ENH] Update to EntityLabel to handle non string objects. Contrib dudleya

– [FIX] Corrected Fill method Bug in EntityProviderBaseCore.generated.cst, contrib hrncir
– [ENH] Lazy init entityHashCode in entity, contrib SuperJeffe
– [FIX] Corrected NullRef Exception in EntityFilter when filtering a null value for various types
– [FIX] Corrected ntext, text issues with validation and maxlengths showing as 16

– [ENH] Ability to drop all procedures on generation. More info: http://community.codesmithtools.com/forums/thread/23942.aspx

– [FIX] Fixed several small issues in the webadmin.

– [FIX] Several Performance Enhancements, in entity creation, in entity hydration, and in AcceptChanges. contrib SuperJeffe
– [ENH] Changes to Admin List Page to use DeepLoading instead of GetAll by Default. Will handle databases with lots of data or relationships by default in a more performant manner.
– [ENH] Link to all foreign key references in the Admin, for easy navigation throughout pages.
– [ENH] If including AtlasToolkit, Display all blob fields as a dynamic content preview window.
– [ENH] If including Atlas Library, the list grid will be put in an UpdatePanel for Ajax Paging/Sorting calls.
– [REF] Changed all dates in the grid to be displayed as ShortDates.

– [ENH] Ability to turn ON/OFF auto increment of the assembly build version.

– [FIX] EntityGridView had hard-coded Entities namespace (contrib katokay) (NT-164)

– [FIX] Ability of the GridViewSearchPanel to respond to page events.

– [FIX] Fixed issue with parsed Find method (contrib hrncir) (NT-162)
– [FIX] Fixed grid sorting when parameterized Find method used.

– [FIX] Applying the GetPropertyName to the Checkbox’s DataTextField property that is used in the ManyToManyListRelationship configuration.
– [FIX] Properly assigning keys when configuring ManyToManyListRelationship control in the case when keys that linked have different column names.
– [FIX] Fixed InvalidCastException when entity Equal operation was performed (contrib SuperJeffe).

– [ENH] Added support to handle declaratively persistence method of GridViewSearchPanel and GridView parameters.

– [ENH] Specifying Columns Data Type in the concrete classes based of views
– [FIX] Fixing problem with GridViewSearchPanel when GridView bound to an object data source that is based of view.

– [FIX] Fixing "RadioButtonField could not extract control" in BoundRadioButtonField control.

– [ENH] Displaying EntityGridView PageHeader, in the event when there are no records returned from the typed object data source
– [ENH] Exposing several EntityGridView properties to control text in footer (such as ShowPageText, TotalRecordsText, RecordsPerPageText)
– [FIX] Problem with StoredProcedureProvider in multi-threaded scenarios (contrib GRAW) (NT-161)

– [FIX] Enclosing the GridView SortExpression into square brackets to handle fields that contain spaces or start with number.
– [FIX] Currency input validation regex is configured to handle negative numbers.

– [ENH] Several cosmetic enhancements in the webadmin (displaying actual company name and url if specified, cleaning up the unnecessary html tags in master page, setting page name of the default.aspx page).

– [FIX] Validating currency input using RegEx control (allows to specify either dot or coma as a decimal point to accommodate international formats)
– [FIX] Formatting currency datatype (Money|SmallMoney) value as a number with two digits of precision in web admin.

– [FIX] Reverting EnumTextValue to hold Column Name, instead of Friendly Name value, this attribute is used by the typed sql filter functionality.

– [ENH] Changes made to the ValidationRules engine to display FriendlyNames specified in the mapping config file (contrib. kevlingo). More info: http://community.codesmithtools.com/forums/thread/22905.aspx

– [NEW] Addition of the new webcontrol EntityLabel by swin. More info: http://community.codesmithtools.com/forums/thread/22858.aspx
– [ENH] Overriding Equals and GetHashCode in the EntityBase.generated.cs to be able to compare objects by value rather then reference (contrib Taliesin)

– [FIX] MasterPages folder wasn’t created in web admin (contrib Taliesin)

– [FIX] Fixing the hard-coded link issue in the web admin
– [ENH] Renaming the site.admin master page to admin.master page and moving it to the MasterPages folder

– [FIX] Fixed ApplyFilter bug in ListBase.cs (NT-160)

– [ENH] Added ability to exclude specific fields from the GridViewSearchPanel list of fields
– [ADD] Added missing GridViewSearchPanelState.cs file
– [ENH] Enhancements to GridViewSearchPanel. More Info: http://community.codesmithtools.com/forums/thread/22549.aspx
– [FIX] Fixing problem in ComponentServiceBase.cst with hard returns for XML comments (contrib Taliesin)

– [FIX] Custom Stored Procedures for views that have a void return type causes an error in the web service provider (NT-159)

– [FIX] Checking for AllowDbNull when setting Required Property of the EntityDropDownList in the web admin

– [FIX] Issue with Convert function in WsEntityProvider.generated.cst when arguments are null (NT-158) (contrib JJMartin)
– [FIX] Custom stored procs for views were creating transactions that never got committed or rolled back (NT-157) (contrib GRAW)
– [FIX] Internal Filter class renamed to EntityFilter (NT-156)
– [FIX] Fixed issue in the report when there are no errors it would display the number of errors is 1
– [FIX] Fixed issue with BoundEntityDropDownField as reported here http://community.codesmithtools.com/forums/thread/22456.aspx
– [ENH] Added list of custom stored procedures to generation report (found at bottom of page) (NT-155)
– [FIX] Not all classes accounted for SQL extended properties having embedded carriage returns (NT-154)
– [FIX] Insert stored procs no longer had OUTPUT parameters after SVN 491 (NT-152)
– [FIX] Admin layout issue fix (contrib Tanno)
– [NEW] Addition of the BoundRatioButtonField control
– [ENH] Integration of the EntityDropDownList, BoundEntityDropDownField, BoundRatioButtonField into web admin

– [FIX] ExecuteUpdate method in ProviderDataSource was doing an insert rather than an update (NT-153) (contrib sdavison)
– [FIX] OUTPUT stripped from parameter in custom sp (nt-152) (contrib Altin)
– [FIX] Custom stored procedures are no longer dropped and re-created when a project is regenerated (NT-152)
– [NEW] New controls addition to the web toolbox by swin: EntityDropDownList, BoundEntityDropDownField. More info: http://community.codesmithtools.com/forums/thread/22398.aspx

– [FIX] Displaying Guid fields in the web admin (contrib Alex)

– [FIX] Aliased the System.Text.RegularExpressions namespace in EntityUtil.cs (NT-151) (contrib Lampous)

– [FIX] Fixed issue with IIS web projects where user would see "URI Formats Are Not Supported" at design time (NT-150) (contrib evolved)

– [FIX] Fixed DataBinding to a hierarchy of sub collections deeper than 2+ levels (NT-149) (contrib GRAW)
– [FIX] Fixed issue in the root default.aspx page tag atlas renamed to an asp (contrib Lampous)

– [FIX] IncludeGeneratedDate not used in StoredProceduresXml.cst (NT-148) (contrib sadavison)
– [FIX] Fixed a bug in the web service provider when the database name is lower case (NT-147) (contrib XjsDog)
– [FIX] Fixed a performance issue with using the Copy method of the entity due to entity events being fired (NT-146) (contrib jcrawfor74)

– [FIX] Fixed issue where typed repeaters inside of a user control were not able to find the typed datasource control also inside the user control (contrib jletts)
– [ENH] Renamed WsEntityProvider.generated.cs to WsEntityProviderBase.generated.cs and WsEntityViewProvider.generated.cs to WsEntityViewProviderBase.generated.cs to align with other provider naming conventions.

– [EHN] Upgrade to ASP.NET AJAX 1.0 RTM Release and AjaxToolkit 10201 Prod
– [FIX] Fixed issue with WSEntityProvider being abstract (contrib XjsDog) BREAKING CHANGE: see http://community.codesmithtools.com/forums/permalink/22116/22116/ShowThread.aspx#22116
– [ROL] Rollback of the 02/05/2007 changes made to the EntityGridView

– [ENH] Marked all data access layer base classes (sql, generic and webservice) as abstract (http://community.codesmithtools.com/forums/permalink/21893/21893/ShowThread.aspx#21893)
– [ENH] Marked FK relation properties (One-to-one, one-to-many and many-to-many) as virtual so that they can be overridden
– [ENH] Add IncludeGeneratedDate property to control when the generation date is added to the generated files

– [FIX] Fixing exception error in the EntityGridView when bound via DataSource property
– [FIX] Fixing problem of the PageSelector in the EntityGridView when Page.DataBind method is used

– [FIX] Fixing sort direction indicator rendering in FireFox (contrib sdavison)
– [FIX] Correcting the display of column order when multisort is turned off (contrib sdavison)