Home / v1.0.0
Name Modified Size InfoDownloads / Week
Parent folder
SchemaHasher.dll 2010-10-12 18.4 kB
schemahasher-v1.0.0.zip 2010-10-12 21.3 kB
README.md 2010-10-12 1.9 kB
Totals: 3 Items   41.6 kB 0

SchemaHasher - ADO.NET DataSet schema fingerprinting function

Click here for project page


License

Apache License 2.0

Summary

A function for computing a 16-byte hash (returned as a guid) to uniquely fingerprint and identify an ADO.NET DataSet schema. Useful for identifying and tracking schema versions automatically.

Background

SchemaHasher fulfilled our need for a way to keep track of schema versions and modifications with typed ADO.NET DataSet objects. By programmatically computing a schema version, it eliminates the extra step and potential error source of defining one manually as meta-data. It also permits a version to be computed for an XML snapshot of a DataSet that contains a schema, which allows things like database backups to be intrinsically versioned.

Key Features

  • Get unique hash as Guid for a DataSet, typed or untyped
  • DataSetConventions contains conventions that can be used to exclude columns from a schema

Usage

Compute a schema hash:

Dim ds = New TypedDataSet Dim schemaHash As Guid = SchemaHasher.ComputeDatabaseSchemaHash(ds) Dim anotherDs = New TypedDataSet Dim anotherSchemaHash As Guid = SchemaHasher.ComputeDatabaseSchemaHash(anotherDs) Assert.AreEqual(schemaHash,anotherSchemaHash)

If two DataSet objects have the same schema, their schema hashes will be equal.

How to Build

This library and associated unit tests were developed in VS 2008 as Smart Device projects.

Releases

  • 1.0
  • 2010-10-12
  • Initial release

Author:  Adam Ierymenko <aierymenko -at- kdsecure.com>
Copyright: (c) 2010 by KD Secure, LLC
NO WARRANTY, EXPRESS OR IMPLIED.  USE AT-YOUR-OWN-RISK.
Source: README.md, updated 2010-10-12