Practical .NET, software, and AI tutorials by Gerard Beckerleg, a developer in Sydney.
- Digging For Gold - The Hunt For Value
Does every item on your teams backlog have the same value to the business? “We need everything in the spec…tick tock…we don’t need that…that can wait…this can be simpler…oh wait I forgot what this is!” Neil Killick hit the nail on the head for me when he said “a backlog is just a list of ideas” and like all ideas, some are better than others. Think about the backlog on your current project, is it just a waterfall style requirements document in disguise?
- The Ultimate Agile Anti Pattern - Do My Requirements Look Big In This
While researching for my estimation talk at the .NET User Groups in Sydney and Canberra I kept being reminded of the same ritual that keeps occurring in most Agile teams time and time again. It occurs so often and is so pervasive that people have almost accepted it as “the way it is”.
- .NET MVC Windows Authentication
Turns out it is quite easy to allow your users to log on with their Active Directory usernames and passwords when you expose a .NET MVC application to the internet. Either select the following option from the new project menu:
- No EditorOptionDefinition export found for the given option name
I received the following message in Visual Studio 2013 when trying to open a c sharp file: ————————— Microsoft Visual Studio ————————— No EditorOptionDefinition export found for the given option name: TextViewHost/LineNumberMargin Parameter name: optionId ————————— OK —————————
- OData Web Api Date Filter 'Edm.DateTime' and 'Edm.String' incompatible types
I was getting the following error when trying to filter an odata source by date: { "Message":"The query specified in the URI is not valid.", "ExceptionMessage":"A binary operator with incompatible types was detected. Found operand types 'Edm.DateTime' and 'Edm.String' for operator kind 'GreaterThan'.", "ExceptionType":"Microsoft.Data.OData.ODataException", "StackTrace":" at Microsoft.Data.OData.Query.BinaryOperatorBinder.PromoteOperandTypes(BinaryOperatorKind binaryOperatorKind, SingleValueNode& left, SingleValueNode& right) at Microsoft.Data.OData.Query.BinaryOperatorBinder.BindBinaryOperator(BinaryOperatorQueryToken binaryOperatorToken) at Microsoft.Data.OData.Query.MetadataBinder.BindBinaryOperator(BinaryOperatorQueryToken binaryOperatorToken) at Microsoft.Data.OData.Query.MetadataBinder.Bind(QueryToken token) at Microsoft.Data.OData.Query.FilterBinder.BindFilter(CollectionNode path, QueryToken filter) at Microsoft.Data.OData.Query.ODataUriParser.ParseFilter(String filter, IEdmModel model, IEdmType elementType, IEdmEntitySet entitySet) at System.Web.Http.OData.Query.FilterQueryOption.get_FilterClause() at System.Web.Http.OData.Query.Validators.FilterQueryValidator.Validate(FilterQueryOption filterQueryOption, ODataValidationSettings settings) at System.Web.Http.OData.Query.FilterQueryOption.Validate(ODataValidationSettings validationSettings) at System.Web.Http.OData.Query.Validators.ODataQueryValidator.Validate(ODataQueryOptions options, ODataValidationSettings validationSettings) at System.Web.Http.OData.Query.ODataQueryOptions.Validate(ODataValidationSettings validationSettings) at System.Web.Http.QueryableAttribute.ValidateQuery(HttpRequestMessage request, ODataQueryOptions queryOptions) at System.Web.Http.QueryableAttribute.ExecuteQuery(IEnumerable query, HttpRequestMessage request, HttpActionDescriptor actionDescriptor) at System.Web.Http.QueryableAttribute.OnActionExecuted(HttpActionExecutedContext actionExecutedContext)"} I was using the following URI:
- Cannot read property '__count' of undefined Kendo UI Grid MVC Web API Odata
When trying to connect a Kendo UI Grid to an MVC Web API datasource I was getting the following error: Cannot read property ‘__count’ of undefined The problem is the format of the json being returned contains a value with the total number of records that can be used for paging. Solution is to add the following lines to your schema for the data source:
- Kendo MVC Grid Filter Expected primaryExpression
If you receive the error: Expected primaryExpression when trying to add a filter to the Kendo MVC grid then you have probably formatted it incorrectly. Try this: .DataSource(dataSource => dataSource .Ajax() .Filter(filters => filters.Add(trip => trip.DepartureDate).IsGreaterThanOrEqualTo(DateTime.Now.Date).And().IsLessThan(DateTime.Now.Date.AddDays(1))) .Model(model => model.Id(p => p.ID)) .Read(read => read.Action("GetTrips", "Trip")) )
- Kendo UI MVC Grid with Custom Calendar Filter
Here is my code for filtering a Kendo Grid using the Kendo Calendar control. Important things to note: The read method needs to accept a DataSourceRequest object. This will allow the filters you apply to the grid in JavaScript to be performed on the data you retrieve on the server side.
- DbGeography Reverse Polygon Point Order (Ring Orientation) With Entity Framework 5, WKTString and MSSQL 2008
If you draw a polygon using Google maps in a clock wise direction and then try to create a DbGeography object from the Well Known Text String (WKTString) it will create a polygon that covers the area of the earth EXCEPT the area you drew on the map.
- Scrum and TFS 2012
I recently gave the following talk at Microsoft in Canberra and then again at SSW in Sydney. The SSW TV guys filmed me during the Sydney talk and here is the resulting video. This video is great for anyone wanting an overview of Scrum and how well it works with the new TFS 2012. If you already know Scrum then you might be able to learn from how we implement Scrum at SSW.