Thursday, October 14, 2010
Nested If Statement in one line
{
static void Main(string[] args)
{
executeOneLineNestedIf();
}
static void executeOneLineNestedIf()
{
string string1 = null;
string string2 = null;
string string3 = "String 3";
string stringOut = String.IsNullOrEmpty(string1) ? (String.IsNullOrEmpty(string2) ? string3 : string2) : string1;
Console.WriteLine(stringOut);
Console.Read();
}
}
Tuesday, October 20, 2009
HTML 5 and SQL Lite Sample Code
make sure to set this on the page event: body onload="createDatabase()"
html code... i replaced all <> characters to [ and ]...
sql statements:[br /] [textarea cols=50 rows=3 id="txtSQLStatement"][/textarea] [br /] [input type="button" id="Button1" value="execute" onclick="clickExecuteQuery()" /] [br /] [div id="status"][/div] [br /]
javascripts code:
var sampledb;
function createDatabase(){
try {
if (!window.openDatabase) {
alert('works on HTML5 only');
} else {
var name = 'sampledb';
var version = '1.0';
var description = 'Sample Database';
var maxSize = 32768; // in bytes
sampledb = openDatabase(name, version, description, maxSize);
}
} catch(e) {
// Error handling code goes here.
alert("Unknown error "+e+".");
return;
}
}
function executeSQL(sqlStatement)
{
sampledb.transaction(
function (transaction) {
transaction.executeSql(sqlStatement, [], nullDataHandler, errorHandler);
}
);
}
function executeQuery(sqlStatement)
{
sampledb.transaction(
function (transaction) {
transaction.executeSql(sqlStatement, [], dataHandler, errorHandler);
}
);
}
function nullDataHandler(transaction, results)
{
var d = new Date();
updateTransactionStatus("last statement: " + document.getElementById("txtSQLStatement").value + " ran at " + d.toUTCString());
}
function errorHandler(transaction, error)
{
// Error is a human-readable string.
updateTransactionStatus(' Error Message '+error.message+' (Code '+error.code+')');
return false;
}
function dataHandler(transaction, results)
{
// Handle the results
var string = "
results
";
for (var i=0; i
var d = new Date();
updateTransactionStatus("last statement: " + document.getElementById("txtSQLStatement").value + " ran at " + d.toUTCString() + "
" + string);
//updateTransactionStatus(string);
}
function clickExecuteQuery(){
executeQuery(document.getElementById("txtSQLStatement").value);
}
function updateTransactionStatus(message){
document.getElementById("status").innerHTML = message;
}
Sample Statements
Create table
CREATE TABLE [Employee]( [ID] [integer] NOT NULL PRIMARY KEY AUTOINCREMENT, [EmployeeID] [int] NULL, [FirstName] [varchar](20) NULL, [LastName] [varchar](20) NULL)
Delete a table
Drop table employee
Insert Records
Insert into employee (employeeid,firstname,lastname) values(1,'z','a');
Update Records
Update employee set firstname='zaldy'
Remove Records
Delete from employee where firstname='zaldy'
Read Records
Select ID, FirstName, LastName from employee
Tuesday, June 30, 2009
Call Web Service Function via Javascript using AJAX
First step is to create a web project in VS 2008 - Target framework: .NET 3.5
Add New Web Service Item
Configure the web service to allow a javascript call
public class WebService : System.Web.Services.WebService {
…
}
Inside the web service item, I created a custom struct as my data holder
public struct Note
{
public DateTime DateTimeStamp;
public string Comments;
}
I created a couple of functions (getDateStampedNote and getNotes)
[WebMethod]
[XmlInclude(typeof(Note))]
public Note getDateStampedNote(string comments)
{
if (comments == string.Empty)
throw new Exception("Exception: comments must not be empty.");
Note note;
note.DateTimeStamp = DateTime.Now;
note.Comments = comments;
return note;
}
[WebMethod]
[XmlInclude(typeof(Note))]
public ArrayList getNotes()
{
ArrayList ar = new ArrayList();
ar.Add(new Note
{
DateTimeStamp = DateTime.Now,
Comments = "First Note"
});
ar.Add(new Note
{
DateTimeStamp = DateTime.Now,
Comments = "Second Note"
});
ar.Add(new Note
{
DateTimeStamp = DateTime.Now,
Comments = "Third Note"
});
return ar;
}
Note: import XML serialization library in the web service.
using System.Xml.Serialization;
In default.aspx, I added a script manager and inside that I referenced the web service that I just created.

Same aspx file, I added a bunch of javascript functions (but reusable):
function dateStampMyComments()
{
//get comments value
var comments = document.getElementById("comments").value;
WebService.getDateStampedNote(comments,processResultSucess,processResultFailed,Object);
}
function getNotes()
{
WebService.getNotes(processResultGetNotes,processResultFailed,Object);
}
function processResultGetNotes(result)
{
for(index in result){
note = result[index];
document.getElementById("notes").innerHTML = document.getElementById("notes").innerHTML + "
" + note.Comments + " - " + note.DateTimeStamp;
}
}
function processResultSucess(result){
alert(result.DateTimeStamp + " - " + result.Comments );
}
function processResultFailed()
{
alert("Webservice Failed \n" + result._message);
}
Wednesday, February 4, 2009
Automatically mapping a user to a login in SQL Server
The following example shows how to use Auto_Fix to map an existing user to a login of the same name, or to create the SQL Server login Mary that has the password B3r12-3x$098f6 if the login
Mary does not exist.
EXEC sp_change_users_login 'Auto_Fix', 'Mary', NULL;
GO
for more info, go to msdn website at:
http://msdn.microsoft.com/en-us/library/ms174378.aspx
Tuesday, September 30, 2008
Scripting the Creation and Deletion of a Replication in SQL Server
It seems like this is only available on SQL Server 2005 and possibly on 2008 as well. Unless, there is a plug-in for SQL Server 2000, which I doubt it.
To know more about the details on how-to create a push, click on the links below:
http://msdn.microsoft.com/en-us/library/ms146912(SQL.90).aspx
OR
http://msdn.microsoft.com/en-us/library/ms146912.aspx
How to: Delete a Push Subscription (Replication Transact-SQL Programming)
This is OK if you can live to have some residual information related to the subscription. But have no fear, there is a follow up SQL command that will do a clean up in the subscriber database, which will get rid of the unnecessary metadata. Even though the commands work on SQL Server 2000, I still prefer the manual process of deteting the subscription using Enterprise Manager because of the cleanliness that it can provide me.
For more info go to:
http://msdn.microsoft.com/en-us/library/ms146944(SQL.90).aspx
OR
http://msdn.microsoft.com/en-us/library/ms146944.aspx
adios!
Wednesday, September 24, 2008
Missing Assembly in GAC
Error Message:
Could not load file or assembly 'ADODB, Version=7.0.3300.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a' or one of its dependencies. The system cannot find the file specified.
So, what I did is I got a copy of the missing ADODB.DLL and pasted it in the new server. I installed the ADODB assembly and that fixed my problem.
For the System.Core, I just simply registered it using the DLL file located at C:\Program Files\Reference Assemblies\Microsoft\Framework\v3.5 folder.
There are four ways to install an assembly into the global assembly cache:
1. Using the Global Assembly Cache tool (Gacutil.exe).
2. Using Microsoft Windows Installer 2.0.
3. Using a Windows shell extension provided by the Windows Software Development Kit (SDK) called the Assembly Cache Viewer (Shfusion.dll).
4. Using the .NET Framework Configuration Tool (Mscorcfg.msc).
My favorite procedure is using .NET Framework Configuration. It’s really easy.
For more information on how to install assembly into GAC, go to:
http://msdn.microsoft.com/en-us/library/dkkx7f79.aspx
Monday, August 11, 2008
Flag Project
check it out at:
http://www.witoe.com