in

ASP.NET Weblogs

Andru's WebLog

//Comments about technology and software architecture
MySelf.Persist();
  • One year!!! whoa... time really flies....

    I can't believe my last post was a year ago....

    I definitely need to keep this blog a "little" more updated than that. Having said that, this last year have been an incredibly exciting year full of challenges, rewards and sucess (something a little scarce this days).

    I know that the general situation is not the better for many companies, professionals & persons, but our project is related to helping people in this dark hours so we all are very proud of what we have accomplished so far, and the horizon is quite promissing.

    I have learn a couple things during this period, build a couple cool stuff, assembled a pretty amazing crew and contributed to the general sucess so I'm extremely happy.

    I'm looking forward to share some of the knowledge and insight gained during this period and keep contributing to the software architects & developers community in more traditional ways (for me).

    Keep in touch,

    Andrés G Vettori, CTO, VMBC

    www.vmbc.com

  • Add Blackberry support to Forms Server 2007 or Sharepoint 2007

     A few months ago I was the architect for a project involving Microsoft Forms Server 2007 and we needed to support viewing Infopath forms on mobile devices, specifically Blackberry devices.

    The Microsoft Forms Server 2007 is a striped down Sharepoint 2007 server so all Infopath forms web rendering for mobile devices is done through the ASP.NET mobile controls support.

    Unfortunately, Blackberry devices aren't recognized so Infopath forms are render as standard web forms, wich aren't supported by Blackberry devices. Luckily for us, adding support for additional devices is not difficult and can be done by adding some information to a "compat.browser" file found in the "App_Browsers" folder inside the Sharepoint virtual directory. In this file you need to add the following:

    <!-- BlackBerry RIM Browser -->
        <browser id="RIM40" parentID="Default">
            <identification>
                <userAgent match="BlackBerry" />
            </identification>
            <capabilities>
          <capability name="isMobileDevice" value="true" />
          <capability name="javascript" value="true" />
          <capability name="ecmascriptversion" value="1.3" />
          <capability name="version" value="${version}" />
          <capability name="majorVersion" value="${major}" />
          <capability name="minorVersion" value="${minor}" />
          <capability name="supportsCss" value="true" />
          <capability name="frames" value="false" />
          <capability name="cookies" value="true" />
          <capability name="isColor" value="true" />
          <capability name="requiresLeadingPageBreak" value="true" />
          <capability name="requiresUniqueFilePathSuffix" value="true" />
          <capability name="supportsBold" value="true" />
          <capability name="supportsFontSize" value="true" />
          <capability name="supportsImageSubmit" value="true" />
          <capability name="supportsItalic" value="true" />
          <capability name="requires303Redirect" value="true" />
         </capabilities>
        </browser>

    With that your Blackberry browsers will be recognized as mobile devices and our Infopath Forms Server will be able to render the proper content.

    Hope you find this useful, seeU!

    Andrés G Vettori
    MCSE/MCSD/MCT
    Systems Architect

    Leader of the C# Community of the Microsoft Users Group Argentina

  • Retina.NET 2.0 Core & Designer Released

    Hey! just a quick announcement to say that I released a new version of Retina.NET Core and also the new DSL designer for VS2008.

    You can download the precompiled binaries or source code from the CodePlex Retina.NET page. As always, comments / suggestions / critics...  are all welcome.

    Thanks in advance,

    PS: the Retina Setup package still has some older documentation, I know...   sorry for that but I preferred to release the bits and fix the documentation later (I hear some helping offering there...?)

    Andrés G Vettori
    MCSE/MCSD/MCT
    Systems Architect

    Leader of the C# Community of the Microsoft Users Group Argentina

  • Retina.NET project active again

    The Retina.NET project was dormant for some time, but with some help I'm bringing it back to life.

    The last official release was made on October 2006 (v1.0.8.0) and at that time I was working on the new v2 release, but I never finished that task and so the project came to a stop.

    Nonetheless, I have managed to include a couple of interesting changes in those internal Retina.NET versions, and I have found that some other people also have made some useful changes in their own Retina.NET version and are offering to integrate some of those new features with the official project sources.

    So, if you used Retina.NET in some project and made a change or addition to the source code and you would like to see those changes included in an official project release, please stop by the CodePlex Retina.NET page or and let me know.

    Also, if you want to participate in the project in some way, you have an idea to implement some cool new feature on Retina.NET, or you have some time to improve existing documentation, samples or Unit Tests, please stop by the Retina.NET CodePlex site and let me know.

    I'm actively working on getting the new DSL designer that will replace the old EntityGen project, but there is some other work in progress like: LCG support, Generics support, LINQ support & VistaDB support.

    Thanks in advance,

    Andrés G Vettori
    MCSE/MCSD/MCT
    Systems Architect

    Leader of the C# Community of the Microsoft Users Group Argentina

     

  • Created SharpHSQL project on CodePlex

    Guys, as your requests I have created a CodePlex workspace for this project and uploaded the latests sources & binaries I have. There is still more work to be done before this could be considered "production ready", so let's hope to revive this little project and make it something useful.

    It's published at http://www.codeplex.com/sharphsql as expected...

    Thanks you all for your comments!

    Andrés G Vettori
    MCSE/MCSD/MCT
    Systems Architect

    Leader of the C# Community of the Microsoft Users Group Argentina

    Posted Apr 04 2008, 01:12 PM by andresv with no comments
    Filed under:
  • Installed Vista SP1

    A couple weeks ago I got a Vista SP1 from Technet and decided to give it a try on my personal notebook. I tried installing SP1 over the existing Vista instance but it failed (after several attempts with extensive web search and after aplying every tip & trick / recommendation found, I give up) so I tried the upgrade path.So, I downloaded a Vista version with SP1 integrated, burned the image and launched the setup. To my surprise, the upgrade option was disabled (even if I boot from the Vista SP1 DVD) so I have only one option at this point.I went for the full install. It might sound a drastic measure but I really wanted SP1, so I did it. Made a full backup of everything, run the "Easy Transfer" (very handy) program and started the new setup.After that, I had the task of rebuilding my machine to the previous state, installing all software I use on daily basis first and the other stuff on "needed" basis.This was a lot of work and I wouldn't recommend it to anyone, but I'm very happy with my decision because this new Vista is working flawlessly so far. My hibernation problems went away, the same for the unexplained high CPU usage from time to time, and the overall experience is now what I expect from my machine.So, if you are still waiting, go for it! Vista SP1 will make your life easier and pleasant....

    Andrés G Vettori
    MCSE/MCSD/MCT
    Systems Architect

    Leader of the C# Community of the Microsoft Users Group Argentina

    Posted Apr 04 2008, 11:07 AM by andresv with 1 comment(s)
    Filed under:
  • Introduction to WCF Extensibility article published at LevelExtreme Magazine

    Hi everybody! I have been off radar quite a while, so I'm just writting this quick post to make everybody know that I have written and published (Thanks Martín Salías) a nice article (shameless plug, I know...) about WCF extenssibility mechanisms.

    The article can be viewed online at LevelExtreme Magazine WebSite home page or directly at the article.

    Enjoy!

    Andrés G Vettori
    MCSE/MCSD/MCT
    EDS Top Gun - .NET Capability Architect

    Leader of the C# Community of the Microsoft Users Group Argentina

    Posted Feb 18 2008, 10:37 PM by andresv with no comments
    Filed under: , ,
  • Adding a database project reference (DBPro) to a WIX 3.0 project

    I'm building some installers for the project currently working on, and because we use TFS and Team Build I wanted to have the ability of creating MSI packages from the build script run at the build server. 

    Unfortunately MSBUILD doesn't natively support Visual Studio Setup projects so they won't compile your nice MSI setup packages out of the box. Of course you can just modify the MSBUILD script to add an EXEC task to run VS2005 in order to build the setup project, but that requires splitting the original solution (or creating a new one just for compiling the setup project) and this new setup project can't contain references to projects (all references must be changed into binary references).

    For those reasons I explored WIX, the new (and open source) Windows Installer for Xml project from Microsoft, published in SourceForge and found in the Url http://wix.sourceforge.net/

    I started with WIX 3.0 because it fully supports MSBUILD, but the version I downloaded had some serious drawbacks (it lacked support for Votive project variables, for example) and that was a show stopper for me. I also tried the stable WIX 2.0 release, but the lack of MSBUILD support and some other bugs (like no support for dots in project names) was also a show stopper for me. After some time I download the latest (unstable) version of WIX 3.0 (build 3.0.3106.0) and everything worked like a charm. Integration with MSBUILD was beautiful, Votive project variables were supported again and even the dots in the project names works as expected!

    I started to code the installer and I wanted to include some SQL scripts to create some databases on install, and I wanted to automate this as much as possible. I have some VS2005 DBpro database projects and wanted to include the output scripts from those projects into my WIX project. The first version just referenced the SQL files from the projects and compiled just fine in my desktop machine, but failed miserably when compiled on the build server because the output paths are very different (Team Build just copies all output from compiled projects in the DROP folder defined in the build script, and don't use the output folder defined in the source projects).

    So, the solution was to include a project reference in the WIX project to the DbPro projects, and later use those project variables to include the output script files in the setup package. So far, so good....  except that Visual Studio won't let you add this kind of project reference!  If you try that you will get a nice dialog with an "Object Reference Not Set" error message. Not very helpful....

    The solution is to add manually those references by editing the source WIX project file. You can do that by unloading the project in Visual Studio (right click on the project and select "Unload Project") and then right click again on the unloaded project and select the "Edit" option from the context menu. You can always use the good old notepad to do this, but the Visual Studio way is easier (and cooler...). After editing the source project file you can test everything by reloading the project (right click and click the "Reload Project" menu item).

    Inside the WIX project file, near the end of the file (and inside the "ItemGroup" xml tag) you must add something like:

    <ProjectReference Include="..\..\..\Databases\Workflow.Persistence\Persistence.dbproj">
    <
    Name>Workflow.Persistence</Name>
    <
    Project>{7b9401a5-5922-49ed-80ed-1d163f0036dd}</Project>
    <
    Private>True</Private>
    </
    ProjectReference>

    Inside the <Project> xml tag you must type the project GUID you want to reference, and this project GUID can be found inside the project being references itself. In this case, I must open the "Persistence.dbproj" file and look for the "ProjectGuid" xml tag:

    <Project DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
      <PropertyGroup>
        <Configuration Condition=" '$(Configuration)' == '' ">Default</Configuration>
        <Name>"DatabaseProject"</Name>
        <SchemaVersion>2.0</SchemaVersion>
        <ProjectGuid>{4d8e8950-2bf5-4315-a539-ac80f7959187}</ProjectGuid>
        <ShowWizard>True</ShowWizard>
        <OutputType>Database</OutputType>
        <DBProduct>SQL Server 2005</DBProduct>
     

    After that, you should have those nice database project references in your WIX project, like this:

    WIX DbPro References

    Later, in the WIX setup script you can reference the output of those projects like this:

    <Binary Id="CatalogDbScript" SourceFile="$(var.Catalog.TargetDir)\WFTCatalog.sql" />
    <
    Binary Id="PersistenceDbScript" SourceFile="$(var.Persistence.TargetDir)\WFTPersistence.sql" />
    <
    Binary Id="TrackingDbScript" SourceFile="$(var.Tracking.TargetDir)\WFTTracking.sql" />

    As you can see, I'm adding a binary file to the setup package using the "TargetDir" variable for the referenced project. Isn't that nice?

    Usign the cool WIX "SqlExtension" I can very easily include and run those database scripts when installing my project, but that's for another post.

    Andrés G Vettori
    MCSE/MCSD/MCT
    EDS Top Gun - .NET Capability Architect

    Leader of the C# Community of the Microsoft Users Group Argentina

  • Any interest in continue the SharpHSql project?

    I have kind of abandoned this little and nice project, but I feel bad....  I still resist to give up on this and for that reason I'm trying to get two things from you guys:

    1. Comments saying that you would like the project to be continued or not.
    2. Maybe some helping hand here in fixing and changing the things that need to be redesigned or improved.

     Well, I will be waiting your response.....

    Thanks in advance!

    Andrés G Vettori
    MCSE/MCSD/MCT
    EDS Top Gun - .NET Capability Architect

    Leader of the C# Community of the Microsoft Users Group Argentina

  • Retina.NET project moved to CodePlex

    As you probably know the GotDotNet site is being phased out in favor of the new CodePlex, so I have moved the Retina.NET project to http://www.codeplex.com/retina

    I have uploaded the last stable sources and binaries (v1.0.8.0) and sources to the CodePlex TFS servers for the latest (still incomplete) Retina.NET 2.0. I'm still trying to find some time to finish the big refactor to implement generic methods and collections in all Retina.NET classes, but that task proven to be more difficult than I have foreseen.

    Feel free to download the sources, binaries or whatever you find in the site, and if you have the time to contribute with something that would be more than welcome.

    Thanks!

    Andrés G Vettori
    MCSE/MCSD/MCT
    EDS Top Gun - .NET Capability Architect

    Leader of the C# Community of the Microsoft Users Group Argentina

More Posts Next page »