Ridi Ferdiana

Another Technical Fellows Survivor :)
See also: Other Geeks@INDC

January 2006 - Posts

Enterprise Library January 2006

Late story because it's stuck on my inbox, try it guys you will love it :)

Enterprise Library for .NET Framework 2.0 Now Available!(1/20/2006 2:03:20 PM)

The long-awaited update to Enterprise Library for .NET Framework 2.0 is now available - the official release is branded January 2006. This release of Enterprise Library includes six application blocks (Caching, Cryptography, Data Access, Exception Handling, Logging and Security), and provides similar functionality to the previous releases for the .NET Framework 1.1; however, Enterprise Library has been redesigned to use the new capabilities of the .NET Framework 2.0.

Posted By tomhollander

Go to patterns & practices: Enterprise Library

Share this post: | | | |
Posted: Jan 26 2006, 09:18 PM by ridi | with no comments
Filed under:
Diary of Newbie..': Data Access Application Blocks December 2005 in Action

Feeling tired tonight, after meet Mr. Z for launch event in Yogyakarta last night, after I study for tomorrow course in campus. I have to do some migrating from Application Blocks July 2005 into December 2005, well when I see the classes there are so many different than I known in July 2005 release version. Anyway I just work around in DAAB here some of my sample and result

Yesterday
using Microsoft.ApplicationBlocks.Data;
Now
using Microsoft.Practices.EnterpriseLibrary.Data.Sql;
COMMENT: Great is more logical view than before

Yesterday
System.Data.SqlClient.SqlConnection dbConn;
ds = SqlHelper.ExecuteDataset(dbConn, "GetUserInfo", userID);
Now
sqlDB = new SqlDatabase(strKoneksi);
ds = sqlDB.ExecuteDataSet("GetUserInfo", userID);
COMMENT : WOW now I don't need to using SqlClient great is more independent

The bad thing for everything is i have to migrate all of my code that access db using SqlHelper into SqlDatabase :(

Share this post: | | | |
Posted: Jan 20 2006, 08:22 PM by ridi | with no comments
Filed under:
"My KB :b" Always Fail Installing SQL Server 2005

Symptom : When installing SQL Server 2005, you get error belong that can't find package *.cab

Causes : this cause because there are broken installation or another version of SQL Server Express Beta still exist in registry

Resolution : Remove all installation belong to SQL Server 2005 Installation such as VSS Writer, Native Client, etc after that clean registry using registry cleaner and restart and reinstall again

Share this post: | | | |
Posted: Jan 19 2006, 11:18 PM by ridi | with no comments
Filed under:
Campus Launch Visual Studio Express Family

Get ready....for the second launch in Yogyakarta at UKDW University

Meet you there :)
Share this post: | | | |
Posted: Jan 18 2006, 07:28 AM by ridi | with no comments
Filed under:
'My-KB ;b' Visual Studio 2005 Behave Strangely //0106

Symptoms : When I create a new web site using VS2005 , I have a bunch of  'fake language' rather than three language

Cause : I really 'khilaf' and clean the registry so careless

Resolution : Please DON'T delete this following Suspected Bad Link Branch folder key by the registry cleaner software which have started with..

HKEY_CURRENT_USER\SOFTWARE\MICROSOFT\VISUALSTUDIO\8.0\..
HKEY_LOCAL_MACHINE\SOFTWARE\MICROSOFT\DBGCLR\8.0\..
HKEY_LOCAL_MACHINE\SOFTWARE\MICROSOFT\MICROSOFT SQL SERVER\90\TOOLS\..

Share this post: | | | |
Posted: Jan 02 2006, 09:43 PM by ridi | with no comments
Filed under:
'Diary of Newbie' J# 2.0 a.k.a J# 2005

Playing J# 2005 at this moment, in the releases of new version of visual studio .NET 2005 and brand new thing of .NET Framework version Visual J# have a good improvement and dun no why they have a bad improvement too!!
For the first we talking about good improvement. Some of good improvement of J# is
1. J# 2005 now support beanproperty , well this is truly useful for us when using accessor (get and set) in J# you don't need to call like a standard method caller like Java language style but you can call the accessor just like C# style in property and indexer below is the example from MSDN
// beanprop1.jsl
// compile with: /target:module
public class SimpleProperty
{
// must use this comment to treat as beanproperty
/** @beanproperty */
public int getvalue() { return _value; }

/** @beanproperty */
public void setvalue (int v) { _value = v; }

private int _value;
}
// bpconsume.cs
// compile with: /addmodule:beanprop1.netmodule /platform:x86
class CMain
{
public static void Main()
{
 SimpleProperty simple = new SimpleProperty();
 simple.value = 15;
 System.Console.WriteLine( simple.value );
}
}

2. Change some classes from J++ for improvement to Java 2 like in J#, such as generics, user defined value type, user defined enumeration, strictfp for great precession when handling a complex calculation.
3. Support for Applet like development and some of Swing like class, using add on library. Well this issue had been all around in J# since 1.1, but in J# 2.0 vjsuilib (add on assembly) is much better especially for applet like development although drag and drop is not supported in the IDE
4. Support cross class language between j++ classes with .NET BCL, In J# 1.1 is not easy to get wrapper class between J++ class and BCL, now some of them is easy, in example you can catch exception from BCL with J# exception class and vice of versa, using j# serialization and .NET serialization together, and don't forget about converting between J++ legacy type into .NET type has good improvement too

Well another improvement you can see in http://msdn.microsoft.com/vjsharp

But wait there are some left homework for J# development team such as
1. J# isn't support code behind style in ASP.NET development. Well just thinking why this happen since code behind is usually used when developing ASP.NET application and the worst thing is J# not supported in VWD :(
2. If Delphi can support .NET Compact framework development in their Delphi CTP, why J# is not doing same action just like Delphi and support NCF project
3. Hey where is refactoring!! When developing in C# refactoring is second feature that I always used beside intellisense, Refactoring J#? Well I have to do by myself until now :(

Sometimes I think, is Microsoft 'Setengah Hati' in development of J#..? Although J# is not good for enterprise and industrial development. I think J# is better way to inject .NET technology in classes :)

Share this post: | | | |
Posted: Jan 02 2006, 09:43 PM by ridi | with no comments
Filed under:
'There is A Code..' Create Master Detail using Two different Dataset //0106

Problem : Well I have two dataset from two different department. Each dataset I get from Web Services And now I have to create master detail relation  in one Windows form. As a note they have one column that related each other well frankly speaking it's have same ID column

Solution:

I can't combine two different dataset or DataTable and relate it with DataRelation object. Since .NET will throws an exception if you do so.
One of the stupid solution is like this
1. Create one Dataset to hold the combined dataset
2. Get a DataTable that you want to combine from each two dataset and add it into the Dataset that have you created in point one. Please beware you MUST copy the Dataset, otherwise .NET Runtime will throw you exception
3. Create DataRelation object
4. Create two BindingSource object and two GridView
5. Bind it :)

Below is a snippet sample code to do five step above
 // don't compile it it's just sample
 
 // create dataset
 dsPayment = new DataSet("Payment");
 
 // add the datatable
 dsPayment.Tables.Add(WSConnector.GetMemberPayment().Tables[0].Copy());
 dsPayment.Tables.Add(WSConnector2.GetMemberRek().Tables[0].Copy());
 
 // create relation
 DataRelation relasi = new DataRelation("hasRekening", dsPayment.Tables[0].Columns[0],
  dsPayment.Tables[1].Columns[0]);
 dsPayment.Relations.Add(relasi);

 // binding payment info and rekening info
 BindingSource bindingMaster = new BindingSource();
 BindingSource bindingDetail = new BindingSource();
 // master dataset
 bindingMaster.DataSource = dsPayment;
 bindingMaster.DataMember = "PaymentTable";
 // bind master binding
 bindingDetail.DataSource = bindingMaster;
 bindingDetail.DataMember = "hasRekening";
 
 // load grid and bind it
 gridPayment.DataSource = bindingMaster;
 gridRekening.DataSource = bindingDetail;

Share this post: | | | |
Posted: Jan 02 2006, 09:41 PM by ridi | with no comments
Filed under: