Tuesday, March 13, 2012

jquery get asp.net label text

var labelText = $('#<%= lblabc.ClientID %>').html();

jquery find server control checkbox checked state

if ($('#isAgeSelected').is(':checked')){
//your code here
}

Friday, March 09, 2012

tsql get part of a datetime value

DATEPART(portion, datetimevalue)

the options for portion are:

Ms for Milliseconds
Yy for Year
Qq for Quarter of the Year
Mm for Month
Dy for the Day of the Year
Dd for Day of the Month
Wk for Week
Dw for the Day of the Week
Hh for Hour
Mi for Minute
Ss for Second

e.g.
select startdate,DATEPART(Hh,a.startdate)

this returns the hour of startdate

Wednesday, February 29, 2012

mvc format databound datetime column

if you want something like "22/11/2012 15:00" then use
columns.Bound(o => o.MyDateTimeValue).Format("{0:dd/MM/yyyy HH:mm}").Width(120);

if you want something like "22/11/2012 3:00 PM" then use
columns.Bound(o => o.MyDateTimeValue).Format("{0:dd/MM/yyyy hh:mm tt}").Width(120);

Tuesday, February 28, 2012

t-sql add new line in code

i keep forgetting this simple solution:
char(13)
now I save it here so that I never forget again

Tuesday, February 14, 2012

c# split multi-line postal address

I have a multi-line postal address (string PostalAddressString) like this:

Address1:12 Garden Street
Address2:
Suburb:Abc
PostCode:123
State:BC
Country:ABCDE


In order to separate details and access them individually i need to do this:



NameValueCollection lines = new NameValueCollection();
string[] TempArray = PostalAddressString.Split(Environment.NewLine.ToCharArray());
if (TempArray.Count() > 5 || TempArray[0].ToLower() != "n/a")
{
foreach (string line in TempArray)
{
string[] parts = line.Split(':');
if (line.Length > 0)
lines.Add(parts[0].Trim(), parts[1].Trim());
}

string PostalAddressLine1String = lines.Get("Address Line 1");
string PostalAddressLine2String = lines.Get("Address Line 2");
string PostalSuburbString = lines.Get("Suburb");
string PostalPostCodeString = lines.Get("PostCode");
string PostalStateString = lines.Get("State");
string PostalCountryString = lines.Get("Country");
}

Thursday, February 09, 2012

Telerik RadGrid how to bind detailtable from code behinde

Use this method:

OnDetailTableDataBind(object sender, GridDetailTableDataBindEventArgs e)

The ParentKeyValues can be accessed this way:

e.DetailTableView.ParentItem.GetDataKeyValue("StoreId")

Tuesday, February 07, 2012

t-sql update table with join


update d
set d.dname = "HR"
from Department d
inner join employee e
on e.employeeID = d.employeeID
where d.departmentID = 1

Tuesday, November 22, 2011

Stimulsoft relax Master Detail table relationships

When I setup master detail table relationship in my report i noticed that the master records which do not have any related detail records will not be shown.

The trick is to set "Print if Detail Empty" property of the master data band to "true"

Friday, November 11, 2011

Asp.Net retrieve Web.config AppSettings in c# code behind

have a reference:

using System.Web.Configuration;

then use this code to retrieve the value:
WebConfigurationManager.AppSettings["propertyName"]

Thursday, October 20, 2011

Telerik RadGrid databinding throws error when open template edit form in insert mode with boolean controls e.g. checkbox

solution is to have a corresponding GridBoundColumn, and set DefaultInsertValue="false" in the column definition

Telerik RadGrid shows second page after opening the insert form

my radgrid uses Tempalte in EditFormSettings. It current contains 2 pages of data.
When I click on Add New Record the command button on top of the grid, the edit form opens correctly in insert mode. However when I look closely at the data, it actually shows the second page, and the page number on the bottom of the grid shows "2".


The solution is to set

Wednesday, September 07, 2011

tsql rename table and column

--rename a table:
EXEC sp_rename 'OldTableName', 'NewTableName'
--rename a column:
EXEC sp_rename
@objname = 'TableName.OldColumnName',
@newname = 'NewColumnName',
@objtype = 'COLUMN'

Friday, September 02, 2011

c# assign values to object property by property name

Class1 obj= new Class1();
string propertyName = "name1";
string objValue = "";
Type type = obj.GetType();
PropertyInfo prop = type.GetProperty(propertyName );
prop.SetValue(obj, objValue , null);

Thursday, September 01, 2011

c# aspnet download file from server side

string text1 = this.Server.MapPath("~/" + [FileFolder]);
if (Directory.Exists(text1))
{
string text2 = text1 + @"\[File Name with extension]";
if (System.IO.File.Exists(text2))
{
FileStream stream1 = new FileStream(text2, FileMode.Open, FileAccess.Read);
byte[] buffer1 = new byte[((int)stream1.Length) + 1];
stream1.Read(buffer1, 0, (int)stream1.Length);
stream1.Close();

//Writes the file out the Response object
Response.Clear();
Response.Buffer = true;
Response.AddHeader("Content-Disposition", "attachment;filename=\"[File Name with extension]\";");
Response.WriteFile(text2, true);
Response.ContentType = "application/x-zip-compressed";
Response.BinaryWrite(buffer1);
Response.End();
}
}

Thursday, August 25, 2011

helpful linq to sql article

http://weblogs.asp.net/scottgu/archive/2007/07/11/linq-to-sql-part-4-updating-our-database.aspx

Wednesday, August 24, 2011

some useful keyboard shortcuts for Visual Studio

found this helpful
http://visualstudiohacks.com/general/confessions-of-a-keyboard-junkie/

Wednesday, August 17, 2011

import from excel c# aspnet

String sConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;" +
"Data Source=" + RadUpload.UploadedFiles[0].FileName+";" +
"Extended Properties=Excel 8.0;";
OleDbConnection objConn = new OleDbConnection(sConnectionString);
objConn.Open();
OleDbCommand cmdSelectAdditions = new OleDbCommand("SELECT * FROM [Sheet1$]", objConn);
OleDbDataAdapter AdapterForAdditions = new OleDbDataAdapter();
AdapterForAdditions.SelectCommand = cmdSelectAdditions;
DataSet dsAdditions = new DataSet();
AdapterForAdditions.Fill(dsAdditions);
objConn.Close();

Tuesday, August 16, 2011

aspnet c# generate .pdf

this article helped me, hope it helps you too!
http://www.4guysfromrolla.com/articles/030911-1.aspx

I need to parse HTML into the pdf, the implementation is:

Response.ContentType = "application/pdf";
Response.AddHeader("content-disposition", "attachment;filename=Transactions.pdf");

Response.Cache.SetCacheability(HttpCacheability.NoCache);
Document document = new Document(PageSize.A1, 10f, 10f, 10f, 0f);
PdfWriter.GetInstance(document, Response.OutputStream);

// Open the Document for writing
document.Open();

string documentContent = string.Empty;
document.NewPage();
documentContent = "Confirmation" + "
" + body;
StringReader sr = new StringReader(documentContent);
foreach (object item in HTMLWorker.ParseToList(sr, null).ToList())
{
document.Add((IElement)item);
}

document.Close();

Response.Write(document);
Response.End();

Thursday, August 11, 2011

How to query and display excel data by using ASP.NET, ADO.NET, and Visual C# .NET

found this article very helpful
http://support.microsoft.com/kb/306572/

I modified it a bit to work for me (I am using RadUpload to get the file):

// Create connection string variable. Modify the "Data Source"
// parameter as appropriate for your environment.
String sConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;" +
"Data Source=" + ruImporter.UploadedFiles[0].FileName+";" +
"Extended Properties=Excel 8.0;";

// Create connection object by using the preceding connection string.
OleDbConnection objConn = new OleDbConnection(sConnectionString);

// Open connection with the database.
objConn.Open();

// The code to follow uses a SQL SELECT command to display the data from the worksheet.

// Create new OleDbCommand to return data from worksheet.
OleDbCommand objCmdSelect = new OleDbCommand("SELECT * FROM [Sheet1$]", objConn);


// Create new OleDbDataAdapter that is used to build a DataSet
// based on the preceding SQL SELECT statement.
OleDbDataAdapter objAdapter1 = new OleDbDataAdapter();

// Pass the Select command to the adapter.
objAdapter1.SelectCommand = objCmdSelect;

// Create new DataSet to hold information from the worksheet.
DataSet objDataset1 = new DataSet();

// Fill the DataSet with the information from the worksheet.
objAdapter1.Fill(objDataset1);



// Clean up objects.
objConn.Close();