Website Monitor v2.0

by Frank Perez November 22, 2013

Two and half years ago I released the first version of the WSM (Website Monitor) application. In that time I have received some good feedback and have enjoyed working on this project. Today I'm proud to release the next version of WSM with some very cool features.

  • Installation Program
  • User Interface
  • SQL Compact Data
  • Digitally Signed

Installation Program

WSM now includes a real installation program. The installation program will automatically verify that all of the required components (Microsoft .NET Framework 4.5 and Microsoft SQL Server Compact 4.0) exist. If a required component doesn't exist, the installation program will download and install it.

User Interface

WSM now includes a user interface. The user interface simplifies the setup process and makes interacting with WSM easier.

Account List

The Account List is the main form. This form displays the current status of every account, is used to perform account maintenance (new, edit, delete), and access the logs.

Service Menu

  • Start: starts the service in the Service Control Manager.
  • Stop: stops the service in the Service Control Manager.
  • Restart: restarts the service in the Service Control Manager.
  • Install: installs the service in the Service Control Manager.
  • Uninstall: uninstalls the service from the Service Control Manager.

Toolbar

  • New Account: displays the Account Maintenance with a new account.
  • Edit Account: displays the Account Maintenance form for the selected account.
  • Delete Account: permanently deletes the selected account and all of the corresponding logs.
  • Account Logs: displays the Log List form for the selected account.
  • Import Accounts: creates accounts by importing settings from WSM v1.

Account Maintenance

The Account Maintenance form is used to define the account settings. This form includes the ability to test the settings and to manually perform the website check process.

Settings

  • Account Settings: Description, URL, and Timeout After are required.
  • SMTP Settings: optional.
  • Notification Settings: optional.
  • Schedule Settings: all settings are required.

Test Button

The Account and SMTP settings include a Test button. Keep in mind that if you run WSM as a Windows Service, the credentials you test with could have different rights than the Windows Service.

Run Now Tool Button

The Run Now button can be used to manually perform the website check process.

Log List

The Log List form displays the account logs.

SQL Compact Data

WSM now stores the account information and logs in a SQL Compact 4.0 Database. The database is located in the Common Program Data folder. On a Windows 7 PC, this equates to C:\ProgramData\PF Solutions\Website Monitor\.

Digitally Signed

All of the WSM EXE and DLL files are now digitally signed.


Links:
Download http://pfsolutions-mi.com/Product/WebsiteMonitor

Keywords:

Filed Under: .NET | WSM

DiscountASP.NET SQL Backup v2.0

by Frank Perez November 1, 2013

It has been over two years since I released the first version of DSB (DiscountASP.NET SQL Backup). In that time I have received some good feedback and really enjoyed working on this project. Today I'm proud to release the next version of DSB with some very cool features.

  • Installation Program
  • User Interface
  • Schedule Settings
  • SQL Compact Data
  • Digitally Signed

Installation Program

DSB now includes a real installation program. The installation program will automatically verify that all of the required components (Microsoft .NET Framework 4.5 and Microsoft SQL Server Compact 4.0) exist. If a required component doesn't exist, the installation program will download and install it.

User Interface

DSB now includes a user interface. The user interface simplifies the setup process and makes interacting with DSB easier.

Account List

The Account List is the main form. This form displays the current status of every account, is used to perform account maintenance (new, edit, delete), and access the logs.

Service Menu

  • Start: starts the service in the Service Control Manager.
  • Stop: stops the service in the Service Control Manager.
  • Restart: restarts the service in the Service Control Manager.
  • Install: installs the service in the Service Control Manager.
  • Uninstall: uninstalls the service from the Service Control Manager.

Toolbar

  • New Account: displays the Account Maintenance with a new account.
  • Edit Account: displays the Account Maintenance form for the selected account.
  • Delete Account: permanently deletes the selected account and all of the corresponding logs.
  • Account Logs: displays the Log List form for the selected account.
  • Import Accounts: creates account by importing settings from DSB v1.

Account Maintenance

The Account Maintenance form is used to define the account settings. This form includes the ability to test the settings and to manually perform the backup process.

Settings

  • Account Settings: Description and API Key are required.
  • Database Settings: Backup Type and Database Name are required.
  • FTP Settings: FTP Folder, FTP User Name, and FTP Password are required.
  • Local Folder Settings: Local Folder is required.
  • SMTP Settings: optional.
  • Notification Settings: optional.
  • Schedule Settings: all settings are required.

Test Button

The Account, Database, FTP, Local Folder, and SMTP settings include a Test button. Keep in mind that if you run DSB as a Windows Service, the credentials you test with could have different rights than the Windows Service.

Run Now Tool Button

The Run Now button can be used to manually perform the backup process.

Log List

The Log List form displays the account logs.

Schedule Settings

DSB now includes the ability to schedule when and how often the backup process is performed. Keep in mind that these settings only apply if DSB is ran as a Windows Service. Also, DiscountASP limits how often a backup can be performed. The current limit is once every 6 hours.

SQL Compact Data

DSB now stores the account information and logs in a SQL Compact 4.0 Database. The database is located in the Common Program Data folder. On a Windows 7 PC, this equates to C:\ProgramData\PF Solutions\DASP SQL Backup\.

Digitally Signed

All of the DSB EXE and DLL files are now digitally signed.


Links:
Download http://pfsolutions-mi.com/Product/DASPSQLBackup
DiscountASP.NET http://discountasp.net/

Keywords:

Filed Under: .NET | DSB

Fluent Migrator Class Generator v0.2.0.0

by Frank Perez October 16, 2012

It has been a couple of months since I first released the Fluent Migrator Class Generator utility. In that time there has been several updates to the Fluent Migrator project on GitHub so this release addresses some of the changes.

The first enhancement is an optional Profile setting. A Profile is a Migration Class Attribute that can be used by the Migration Runner to filter which migrations will be performed. For example, you might have migrations that should only run on the Developer Test Database. See the Fluent Migrator Profile Wiki for more information.

The second enhancement is also optional. It is a Tags setting. Tags are also a Migration Class Attribute that can be used by the Migration Runner to filter which migrations will be performed. See the Fluent Migrator Tags Wiki for more information.

The final modification is a change in the way that unique constraints / indexes are handled. In the previous version the Create.Index expression was used.

Create Index

To be compatible with Fluent Migrator v1.0.3.0, the Create.UniqueConstraint expression must be used.

Create Constraint

An updated version of this application can be downloaded from http://pfsolutions-mi.com/Product/FluentMigratorClassGenerator.

Keywords:

Filed Under: .NET | FMG

MetaData Class Generator v0.1.0.0

by Frank Perez August 23, 2012

Since my first ASP.NET MVC, I've always used the Data Annotation Model Binder to perform simple validations like the following:

  • Range – validate whether the value of a property falls between a specified range of values.
  • Regular Expression – validate whether the value of a property matches a specified regular expression pattern.
  • Required – mark a property as required.
  • String Length – specify a maximum length for a string property.

The problem is that if you like to design "Database First" like me, it can take a significant amount of time to build all of the classes later. Since I'm the kind of person who hates tedious work, I created my own utility for building the classes called MetaData Class Generator. MetaData Class Generator is a console application for generating Data Annotation classes based on an existing SQL Server Database.

If you would like a copy of this application, you can download the latest version using the link below. The following is a list of important notes:

  • This application requires the Microsoft .NET Framework 4 Client Profile.
  • This application has only been tested with SQL Server 2008 R2. Other versions may work, but there could be issues mapping newer data types.
  • Be sure to read the README.TXT file for instructions on running the application.
  • I'd love to hear any feedback. What do you like, what do you not like, what kind of features would you like to see in future versions?


Links:
Download MetaData Class Generator http://pfsolutions-mi.com/Product/MetaDataClassGenerator
Using Data Annotations for Model Validation http://www.asp.net/mvc/tutorials/mvc-music-store/mvc-music-store-part-6
Microsoft .NET Framework 4 Client Profile http://www.microsoft.com/downloads/en/details.aspx?FamilyID=5765d7a8-7722-4888-a970-ac39b33fd8ab

Keywords:

Filed Under: .NET | MDG

Fluent Migrator Class Generator v0.1.0.0

by Frank Perez August 23, 2012

Earlier this year at the CodeMash conference in Sandusky, Ohio I heard about a NuGet Package called Fluent Migrator. Fluent Migrator is a database migration framework that uses classes for performing database migrations. Up until this point, the way I typically handled database migrations was to write T-SQL scripts or use a commercial application. So when I learned that I could accomplish database migrations using simple classes in .NET, I was intrigued.

The image above demonstrates how to use a Fluent Migrator class to perform a database migration (create table, create index, create foreign key, etc.). There are also similar expressions for deleting columns, altering tables, altering columns, and etc. I'm not going to go into all the details about how to use the framework. I think there is enough information on the project site to help anyone get started.

The one problem I found when using the Fluent Migrator framework is the barrier to getting started when the database already exists. Fluent Migrator does not have any kind of class generate utility that can build the initial class with all of the necessary create schema, table, column, and etc. commands. That means I would have to either use a T-SQL script of the current structure and then use Fluent Migrator classes for any future migrations. Or I could spend a significant amount of time building the initial class myself.

Since I'm the kind of person who hates monotonous work and thinking that I would want to use Fluent Migrator for several existing projects, I created my own utility for building the class called Fluent Migrator Class Generator. Fluent Migrator Class Generator is a console application for generating a Fluent Migrator class based on an existing SQL Server Database.

If you would like a copy of this application, you can download the latest version using the link below. The following is a list of important notes:

  • This application requires the Microsoft .NET Framework 4 Client Profile.
  • This application has only been tested with SQL Server 2008 R2. Other versions may work, but there could be issues mapping newer data types.
  • Be sure to read the README.TXT file for instructions on running the application.
  • I'd love to hear any feedback. What do you like, what do you not like, what kind of features would you like to see in future versions?


Links:
Download Fluent Migrator Class Generator http://pfsolutions-mi.com/Product/FluentMigratorClassGenerator
Fluent Migrator Project Site http://nuget.org/packages/FluentMigrator
Microsoft .NET Framework 4 Client Profile http://www.microsoft.com/downloads/en/details.aspx?FamilyID=5765d7a8-7722-4888-a970-ac39b33fd8ab

Keywords:

Filed Under: .NET | FMG

About Frank

Frank lives in West Bloomfield, Michigan with his wife and three children.  When he is not writing code, he enjoys long distance running and riding his motorcycle.

Month List

Tag Cloud