Wednesday, December 23, 2009

Esame Microsoft 70-536

Inizia in questi giorni di festivita' e dopo un breve (purtroppo) periodo di riposo, la mia preparazione all'esame "70-536 Microsoft .NET Framework - Application Development Foundation" !!!
Questa la descrizione ufficiale dell' esame:

"Exam 70-536 is designed to measure your knowledge of .NET development fundamentals and is not tied to a particular version of .NET. Since the exam is now applicable to both Microsoft .NET Framework 2.0 and Microsoft .NET Framework 3.5 certification tracks, we have changed the name of the exam. Formerly TS: Microsoft .NET Framework 2.0 – Application Development Foundation, Exam 70-536 is now called TS: Microsoft .NET Framework, Application Development Foundation. If you are a .NET 2.0 developer, you do not need to learn .NET 3.5 to pass Exam 70-536; conversely, if you are a .NET 3.5 developer, you do not need to review .NET 2.0 to pass the exam."

Questo e' il primo passo per ottenere la certificazione "MCTS: .NET Framework 2.0 Web Applications" MCTS
Il manuale su cui studio e' questo, circa ottocento pagine in inglese e pagato poco piu' di 30€.
Se voi lo avete gia' superato ogni consiglio sara' molto gradito :)

Saturday, September 19, 2009

Twitter Updates: 19/09/2009

Web

Webdesign

dotNet

Friday, September 4, 2009

Twitter Updates: 04/09/2009

Design

dotNet

Webdesign

Sql

Saturday, April 25, 2009

Recursive function in Asp.Net

An important programming technique is the Recursion.
Recursive is a procedure or subroutines that contains a statement that calls itself.

In this simple example I use a recursive function to clean all TextBox even those within a container (ascx control)


Private Function CleanAll(ByVal container As Control) As ArrayList

Dim txt As TextBox
For Each c As Control In container.Controls
If c.GetType.Name = "TextBox" Then
txt = c
If txt.Text <> "" Then
txt.Text = ""
allControlls.Add(c)
End If
Else
CleanAll(c) ' invokes recursively the method
'to add more controls in the control children
End If
Next
Return allControlls

End Function

There are two ascx controls nested one inside the other.
The same thing works with panels and other asp.net containers.
If you want, you can download this example here (visual basic) or here (c#).

For more info try here and here.

That's all !

Wednesday, April 1, 2009

Add Item to DropDownList

Hi!

In this post I'll explain how to add a custom-item in a DropDownList using ListItem object.

As written in MSDN:

"ListItem represents a data item in a data-bound list control"
"A ListItem control represents an individual data item within a data-bound list control"

First of all, we have to connect a Database Table with a DropDownList. (you can see how populate a DropDownList here)

Protected Sub GetContact()

Dim obj As cl_Person = Nothing
obj = New cl_Person(System.Configuration.ConfigurationManager.AppSettings("APPConnectionString"))

Me.ddlPerson.DataSource = obj.GetContact()
Me.ddlPerson.DataValueField = "ContactID"
Me.ddlPerson.DataTextField = "FullName"
Me.ddlPerson.DataBind()

End Sub

Then in the DataBound event of the DropDownList, write this:

Protected Sub ddlPerson_DataBound(ByVal sender As Object, ByVal e As System.EventArgs) Handles ddlPerson.DataBound

Dim myItem As New ListItem
myItem.Text = "Choose One !!!"
myItem.Value = 0
myItem.Selected = True
Me.ddlPerson.Items.Add(myItem)

End Sub

As you can see, "Choose One !!!" rapresents our custom-item.



If you want, you can download this example here.
You can download and install AdventureWorksDB.msi database here.

Please remember to change in the web.config file, the two values "Data Source=pc01;" with
your sqlserver instance name. (probably "computername" with Sql2005/2008, but if you are using SqlExpress edition your instance name is "computername\SQLExpress")

That's all !

Tuesday, March 31, 2009

Hotfix for "Design view does not update HTML"

Hello everybody!
In a previous post, I have described an update-problem with design-view and souce-view in Visual Studio 2008.

Recently Microsoft has released some hotfix that you can download here.

Enjoy!

Wednesday, March 18, 2009

Custom Filter

There are many ways to filter data in a grid, here one of them...

All you need is to create a DataSet connected with a table and a little code!
(in the example I use "AdventureWorks" as database and "Person.CountryRegion" as table)

Let's start!

As usual, we have to write an object to connect a GridView with a source like a dataset/database.


Public Function GetCountryRegion(Optional ByVal CountryRegionCode As String = "%", _
Optional ByVal Name As String = "%") As ds_CountryRegion.CountryRegionDataTable

Dim cnn As SqlConnection = Nothing
Dim cmd As SqlCommand = Nothing
Dim da As SqlDataAdapter = Nothing
Dim sqlStatement As String

Try
sqlStatement = "SELECT * FROM Person.CountryRegion where CountryRegionCode like '" & CountryRegionCode & "%' and Name like '" & Name & "%'"

cnn = New SqlConnection(Me._connectionString)
cmd = New SqlCommand(sqlStatement, cnn)
da = New SqlDataAdapter(cmd)

cnn.Open()

_ds.CountryRegion.Rows.Clear()
da.Fill(_ds, "CountryRegion")
Catch ex As Exception
'todo: code for exceptions!
Finally
GetCountryRegion = _ds.CountryRegion

If Not (cnn Is Nothing) Then
cnn.Close()
cnn.Dispose()
cnn = Nothing
End If
If Not (da Is Nothing) Then
da.Dispose()
da = Nothing
End If
If Not (cmd Is Nothing) Then
cmd.Dispose()
cmd = Nothing
End If
End Try

End Function

As you can see, I use the keyword "Optional" for the parameters and I use "%" as default value.
In T-Sql language "%" stands for "all". If there are no parameters passed, the code reads "all" CountryRegionCode records and "all" Name records.

Another interesting thing is the use of the keyword "like" and the use of "%" at the end of the parameters in the sqlStatement string ("like 'Name%'" and "like 'CountryRegionCode%'").

In this example I can catch all records with the Name that starts with the parameter passed: all records with "Name%" starts with "I%" (Italy, Ireland, Iceland...) (ok I know, it's not easy for me to explain in eng... I'm sorry!)

sqlStatement = "SELECT * FROM Person.CountryRegion where CountryRegionCode like '" & CountryRegionCode & "%' and Name like '" & Name & "%'"




When our object is ready and connected with a GridView through the "DataSource" property, we have to use the "Databind" property to associate the data with the GridView.

In the Page_Load event, there are no parameters passed to the DataTable object (in fact the two TextBox values are empty ---> "")

Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load

If Not IsPostBack Then
GetGwCountryRegion()
End If

End Sub

But each time that we write something in the TextBox Name or CountryRegionCode and click on "Filter", the DataTable recives parameters and use them for filtering.

That's all!

You can download this my little example here.
You can download and install AdventureWorksDB.msi database here.

Please remember to change in the web.config file, the two values "Data Source=pc01;" with
your sqlserver instance name. (probably "computername" with Sql2005/2008, but if you are using SqlExpress edition your instance name is "computername\SQLExpress")

Enjoy!

Friday, March 13, 2009

IE7 vs ThisBlog (fixed)

Explorer 7(fixed):


... I have upgraded the css! :)

IE7 vs ThisBlog

Take a look...

Firefox:

Safari:

Explorer 7:

... ok, I'll try to fix it or maybe not! :(

Thursday, February 19, 2009

GridLines style in Gridview

A fast way to change the style of the gridlines in a gridview:


Protected Sub gwMyGw_PreRender(ByVal sender As Object, ByVal e As System.EventArgs) Handles gwMyGw.PreRender

'PreRender event!
Dim tblStyle As New TableItemStyle()
tblStyle.BorderColor = Drawing.Color.White
tblStyle.BorderWidth = "2"

Dim row As TableRow
For Each row In Me.gwMyGw.Rows
Dim cel As TableCell
For Each cel In row.Cells
cel.ApplyStyle(tblStyle)
Next
Next

End Sub



Enjoy !

2012 | aspnet code by Michele | don't try this at home
Mirko Iodice Notageek
Vladimir Carrer Carrer web log