EstimatorX - Project Estimation Application

EstimatorX

A simple project estimation application.
http://estimatorx.com

Features

Projects

A project contains all the details that make up an estimate. An estimate is broken down into Assumptions, Factors and Tasks. The estimate is padded with a contingency rate.

Assumptions

When making an estimate, there are assumptions the estimator makes to come up with the estimate. Document those assumptions to help raise the red flag in the future when an assumptions proves not to be true.


FluentCommand - Fluent Wrapper for DbCommand

Fluent Wrapper for DbCommand

Download

The FluentCommand library is available on nuget.org via package name FluentCommand.

To install FluentCommand, run the following command in the Package Manager Console

Install-Package FluentCommand

Features

  • Fluent wrapper over DbConnection and DbCommand
  • Callback for parameter return values
  • Automatic handling of connection state
  • Caching of results
  • Automatic creating of entity from DataReader
  • Create Dynamic objects from DataReader
  • Handles multiple result sets

Example

Query all users with email domain. Entity is automatically created from DataReader.


KickStart - Application Initialization Framework

Application start-up helper to initialize things like an IoC container, register mapping information or run a task.

Features

  • Run tasks on application start-up
  • Extension model to add library specific start up tasks
  • Common IoC container adaptor
  • Singleton instance of an application level IoC container

Download

The KickStart library is available on nuget.org via package name KickStart.

To install KickStart, run the following command in the Package Manager Console

Install-Package KickStart

Example

This example will scan the assembly containing UserModule. Then it will find all Autofac modules and register them with Autofac. Then, all AutoMapper profiles will be registered with Automapper. Finally, it will find all classes that implement IStartupTask and run it.


NLog Fluent Library

Fluent API for NLog

Download

The NLog.Fluent library is available on nuget.org via package name NLog.Fluent.

To install NLog.Fluent, run the following command in the Package Manager Console

Install-Package NLog.Fluent

Examples

Writing info message via fluent API.

_logger.Info()
    .Message("This is a test fluent message '{0}'.", DateTime.Now.Ticks)
    .Property("Test", "InfoWrite")
    .Write();

Writing error message.

try
{
    string text = File.ReadAllText(path);
}
catch (Exception ex)
{
    _logger.Error()
        .Message("Error reading file '{0}'.", path)
        .Exception(ex)
        .Property("Test", "ErrorWrite")
        .Write();
}

Caller Info

Use the static Log class so you don’t have to include loggers in all of classes. The static Log class using .net 4.5 caller info to get the logger from the file name.


NLog MongoDB Library

Writes NLog messages to MongoDB.

Download

The NLog.Mongo library is available on nuget.org via package name NLog.Mongo.

To install NLog.Mongo, run the following command in the Package Manager Console

Install-Package NLog.Mongo

Configuration Syntax

<extensions>
    <add assembly="NLog.Mongo"/>
</extensions>

<targets>
    <target xsi:type="Mongo"
            name="String"
            connectionName="String"
            connectionString="String"
            collectionName="String"
            cappedCollectionSize="Long"
            cappedCollectionMaxItems="Long"
            includeDefaults="Boolean">
    
    <!-- repeated --> 
    <field name="String" Layout="Layout" />
    
    <!-- repeated --> 
    <property name="String" Layout="Layout" />
    </target>
</targets>

Parameters

General Options

name - Name of the target.