Archive for May 2009

A Simple JavaScript To Get English Language Definition From A Dictionary

2009-05-19

English is not my first language so I use online dictionaries frequently as a part of my daily routine to clarify and learn unfamiliar words as I read through articles in the Internet.

I have been using www.ditionary.com for a long time and I had the plan to make this work easy by creating a small application to retrieve the definition with support of a web service. This morning suddenly a new idea hit me to use JavaScript to get the word in the first place and load the appropriate URL.

How Does This Work?

When a user enters a word in the www.dictionary.com interface it redirects the user to the following dynamic URL.

http://dictionary.reference.com/browse/Target-Word

Target-Word is The word we are seeking the definition for

What this JavaScript does is it retrieves the desired word from the user via a prompt, generate the appropriate URL according to the above format and open the new URL in a new window or tab so the time taken (under normal circumstance) to, load the web site, type-in the word, wait till the site redirects you, is saved. Now time is only taken for a single server request/response.

How To Set This Up?

It’s simple, just add a new favorite (for IE) or bookmark (for FireFox) in your browser and paste following code as the URL (for IE) or Location (for FireFox):

javascript:(function(){var%20word=prompt(%22Enter Word:%22);if(word!=null){window.open(%22http://dictionary.reference.com/browse/%22+word);}})();

Add new book mark (in Fire Fox)
Now, when you open the favorite/bookmark, it will ask you for the word you want to look for and open the definition in a new window/tab.

It’s easier to use if you add the bookmark/favorite as a button into your bookmark/links toolbar

Sample Useage

This small script helps me a lot now so I hope this would help you too!

Was this post helpful to you? How can I improve? – Your comment is highly appreciated!

Cassian Menol Razeek

D LINQ : How to Map Columns Which Auto Generate Values At the Database

2009-05-11

I have being working on a software application made on .Net and recently my client asked me to use D LINQ instead of SQL.

D LINQ has great benefits loaded! As I started working with DLINQ I started to know that preventing SQL injection is not a headache anymore and misspelled SQL queries will not trouble agian at run time because DLINQ generates all necessary SQL inside the framework!

I chose to use annotations inside the class instead of using separate xml file. Following is a part of the first class I ported to D LINQ.

</p>

<table(Name:="tbl_Process")> _
Public Class Process
<column(Name:="ProcessID", DbType:="Int", isprimarykey:=True)> _
Public ProcessID As Integer
<column(Name:="BusinessProcessID", DbType:="varchar(50)")> _
Public BusinessProcessID As String
<column(Name:="ProcessText", DbType:="varchar(50)", isprimarykey:=True)> _
Public ProcessText As String
...
...

ProcessID column is the primary key of my database table tbl_Process.

Important Point: I use database to auto-generate values for the primary key column (integer value incremented by one).

So when I run the application, It gave me this unexpected error:

Cannot insert explicit value for identity column in table ‘tbl_Process’ when IDENTITY_INSERT is set to OFF.

Basically, the IDENTITY_INSERT when using the database to auto generate value for a field but when I ran a SQL insert statement at the database end it worked fine!

After some tough time I found out the solution for this problem!

When we use an auto-generate field in a data table we have to specifically mention it in the matching field in the appropriate class.

The code to state this is:

Syntax:

IsDbGenerated:=True

This has to be added to the annotation added for the specific column like:

</p>

<column(Name:="ProcessID", DbType:="Int", isprimarykey:=True, IsDbGenerated:=True)> _
Public ProcessID As Integer

Now D LINQ can understand that the field value is auto-generated by the database!

Was this post helpful to you? How can I improve? – Your comment is highly appreciated!

Cassian Menol Razeek