This is a mirror of official site: http://jasper-net.blogspot.com/

ASP.NET MVC Extensions

| Wednesday, May 12, 2010
Project Description

ASP.NET MVC Extensions (aka System.Web.Mvc.Extensibility) is developed on top of ASP.NET MVC extensibility point, which allows your IoC Container to rule everywhere.

Features:
  • Container Neutral: Stop referencing you IoC Container in your application code, let your application independent from the underlying container, yet utilizing the complete power.
  • Multiple Adapter: Packed with all the Popular IoC Containers adapter which includes Ninject, StructureMap, Unity and Windsor.
  • Bootstrapping: Stop writing the same bootstrapping code over and over again, let the extensions to handle your Controller/Controller Factory/Model Binders/View Engines/Action Filters/Custom Dependencies etc registrations.
  • PerRequestTask: Act as a HttpModule to perform custom logic in the start and end of the request without registering in web.config.
  • Model Binder: Inject custom dependencies in your Model Binder with constructor injection.
  • Action Filter Fluent Registration: Fluently register your action filters which supports constructor injection of your custom dependencies.
  • ModelMetadata Fluent Configuration: Supports Composite ModelMetadata provider, which fallback to default DataAnnotationsModelMetadataProvider, supports configuring your model with fluent syntax like EF Code First or Fluent NHibernate.
  • Various ActionResults: Contains common action result which includes XmlResult, ExtendedJsonResult (which supports JsonConverters), Adaptive PRG (PostRedirectGet) results.
  • Common Route Constraints: Contains common route constraints like Range, Positive Int/Long, Guid, Enum, RegEx etc.
  • Various other Utility methods and helpers.

Read more: Codeplex

Posted via email from jasper22's posterous

Ways to work on the main thread (2)

|
As I promised, this post follows the previous one and suggests another solution for the invocation to the main thread.


A reminder:

We want to perform an operation in a background thread but when our Work is done update something on the main thread.
Here the BackgroundWorker class comes.

- Handles the try/catch within the 'Do_Work' function
- Invocation to main thread is automatic inside the 'work_Completed' delegate function.

The simplest way is:

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using System.Threading;

namespace BackgroundWorkerPost
{
   public partial class Form1 : Form
   {
          private BackgroundWorker Worker;
          public Form1(){InitializeComponent();
          this.button1.Click += new EventHandler(button1_Click);
         
          //Setting main thread name for better logging
          Thread.CurrentThread.Name = "Main_Tread";
   }
 
    /// <summary>
    /// Start button event click handler
    /// </summary>
    private void button1_Click(object sender, EventArgs e)
    {
          Worker = new BackgroundWorker();
          Worker.DoWork += new DoWorkEventHandler(Worker_DoWork);
          Worker.RunWorkerCompleted += new RunWorkerCompletedEventHandler(Worker_RunWorkerCompleted);
          Worker.RunWorkerAsync();
    }

    /// <summary>
    /// The actual job to do
    /// </summary>
    private void Worker_DoWork(object sender, DoWorkEventArgs e)
    {
         //no need try/catch
         Thread.CurrentThread.Name = "Job_Thread";
         Console.WriteLine("Worker Do_Work, In thread: " + Thread.CurrentThread.Name);

         //do some work
         for (int i = 0; i < 100; i++)
         {
               Thread.Sleep(i);
               Console.WriteLine("Sleep:" + i);
         }
 
         //Set the result to pass Job completed function
         e.Result = "Done";
     }

    /// <summary>
    /// Event handler of work completion
    /// </summary>
    private void Worker_RunWorkerCompleted(object sender, RunWorkerCompletedEventArgs e)
    {

         //here we return to main thread automatically - no need to Control.Invoke/ Dispatcher.Invoke
         Console.WriteLine("Worker Run_Completed, in thread: " + Thread.CurrentThread.Name);

         if (e.Error != null) //in case of exception thrown from the Do_Work function
         {
               //update some ui control from here
               this.label1.Text = e.Error.Message;
         }
         else
         {
               //update some ui control from here
               this.label1.Text = (string)e.Result;
         }
    }
  }
}

This class is very useful and has a lot more to offer.
You can use it's ProgressUpdate delegate: process an object to it or/and set data to the returned value.

Read more: GalinaK

Posted via email from jasper22's posterous

Canonical Bringing an Instant-On Ubuntu

| Tuesday, May 11, 2010
   Today at the Ubuntu Developers Summit, Mark Shuttleworth presented a few upcoming Ubuntu projects, including "Light" versions of the operating system for "both netbook and desktop, that are optimized for dual-boot scenarios." Shuttleworth also took the wraps off Unity, a new lightweight interface that will be included in Ubuntu Light and eventually in Ubuntu Netbook Edition as well. "First, we want to move the bottom panel to the left of the screen, and devote that to launching and switching between applications. That frees up vertical space for web content, at the cost of horizontal space, which is cheaper in a widescreen world. ... Second, we'll expand that left-hand launcher panel so that it is touch-friendly. With relatively few applications required for instant-on environments, we can afford to be more generous with the icon size there. ... Third, we will make the top panel smarter." Ars got a chance to try out a prototype of Unity, saying, "Its unique visual style melds beautifully with Ubuntu's new default theme and its underlying interaction model seems compelling and well-suited for small screens.

Read more: Slashdot

Posted via email from jasper22's posterous

Android Sales Surpass iPhone Sales

|
   Smartphones based on Google's Android mobile operating system outsold Apple's iPhone in the US during the first quarter of 2010, according to a report by research firm The NPD Group. The data places Android, with 28 percent of the smartphone market [last quarter], in second place behind RIM's Blackberry smartphone market share of 36 percent. Apple now sits in third place with 21 percent. NPD points to a Verizon buy-one-get-one-free promotion for all of its smartphones as a major factor in the first-quarter numbers. Verizon saw strong sales for the Motorola Droid and Droid Eris Android phones, as well as the Blackberry Curve, thanks to its promotional offer. Verizon launched a $100 million marketing campaign for the Droid when it hit the market in November 2009, which likely contributed to strong sales in the first quarter as well

Read more: Slashdot

Posted via email from jasper22's posterous

Will Google Android ever support .NET?

|
Q: Now that the G1 with Google's Android OS is now available (soon), will the android platform ever support .Net?

A: Mono now works on Android thanks to the work of Koushik Dutta and Marc Crichton.
You can see a video of it running here: http://www.koushikdutta.com/2009/01/mono-on-android-with-gratuitous-shaky.html
And you can get the instructions to build Mono yourself here: http://www.koushikdutta.com/2009/01/building-mono-for-android.html
You can get a benchmark comparing Mono's JIT vs Dalvik's interpreter here: http://www.koushikdutta.com/2009/01/dalvik-vs-mono.html
And of course, you can get a pre-configured image with Mono here (go to the bottom of the post for details on using that): http://www.koushikdutta.com/2009/01/building-mono-for-android.html

Read more: StackOverflow

Posted via email from jasper22's posterous

TextMaker Viewer is a solid alternative for MS Word Viewer

|
textmakerviewer-7257.png

When I translate, I often use huge files for reference; these are glossaries and consistency tables that stretch on for hundreds, and sometimes thousands, of pages. Loading these files in a normal copy of Word puts a major dent in system performance. Word keeps trying to auto-save them or spell check them, and it simply freezes on every attempt, while I sit there and twiddle my thumbs.

My solution is to open these documents in a read-only program, which never tries to save or spell check them. It doesn't do anything other than simply present them.

I would usually use Microsoft's own Word Viewer for this. It worked quite well for me in the past. Since it's an old program, it wouldn't read Docx files natively, and it kept converting them to Doc. It wouldn't save the converted file, though (because it can't save). It kept on converting the file every time I opened it. Once, I converted it myself using Word and just opened the resulting Doc; it was quite smooth and fast.

That is, up until I installed Office 2010. Once I had Office 2010, Word Viewer started giving me some trouble, so I had to go in search of alternatives. What I ended up with is TextMaker Viewer, and I just might stick with it, even after MS updates Word Viewer (especially if they fix the annoyances I've listed below).

Read more: DownloadSquad

Posted via email from jasper22's posterous

Microsoft confirms Natal launch in October

|
We've heard it before, now Microsoft's Syed Bilal Tariq is repeating the October launch date for Natal. Speaking to GamerTagRadio, Microsoft's marketing manager for Saudi Arabia says that the Natal launch,

"is going to be somewhere in October and we will be in a position to confirm the date at E3, which is in June, but definitely it is going to be October 2010."

So there you have it. While we'd prefer to see an official press release on the topic, there's little reason to doubt what you can hear for yourselves after the break.

Read more: Engadget

Posted via email from jasper22's posterous

A Chrome and Glass Theme

|
This is the first in a series of posts that will cover how to build a nice looking chrome and glass theme. The chrome style will be applied to controls and the glass look will be a balancing style to avoid an overload of shiny; it will also give us a nice gentle background appearance.

In this post we are going to define some gradients and color resources for a glass style that can be applied to a Border control. Here is what the finished button will look like:

GlassBorderStyle2.png

We are going to end up with a resource dictionary that we can use with both the ImplicitStyleManager from the Silverlight Toolkit for Silverlight 3, or directly with Silverlight 4. The only difference between the two approaches is that we don't need to add the x:Key="StyleKeyName" attribute on each style, or set the Style property on each control if we want to use it in Silverlight 4.

Setting up our Theme
First we need to create our solution. Start Blend and create a new project (call it something like "ChromeAndGlassTheme". Under the Project menu select "Add new item...", and add a new Resource Dictionary called "ChromeGlass.xaml".

Read more: SILVERLIGHT SCRATCHPAD Part 1, Part 2, Part 3, Part 4, Part 5, Part 6

Posted via email from jasper22's posterous

How to: Copy very large files across a slow or unreliable network

|
To prepare for the DevDiv TFS2010 upgrade we had to copy 8TB of SQL backups about 100 miles across a WAN link so that we could restore it on our test system.  The link speed was reasonably good and the latency fairly low (5ms), but when you’re dealing with files this big then the odds are against you and using sneakernet can be a good option. In our case it wasn’t an option and we had to find the next best solution.  In the end we were able to copy all 8TB over 7 days without having to resume or restart once.

The 8TB backups were spanned across 32 files of 250GB each which makes them a little easier to deal with.  The first problem that you’ll encounter when using a normal Windows file copy, XCopy, RoboCopy or TeraCopy to copy these large files is that your available memory on the source server will start to drop and eventually run out. The next problem you’ll encounter is the connection will break for some reason and you’ll have to restart or resume the transfer.

Fortunately the EPS Windows Server Performance Team have a blog post on the issue and a great recommendation: Ask the Performance Team : Slow Large File Copy Issues

The problem lies in the way in which the copy is performed - specifically Buffered vs. Unbuffered Input/Output (I/O).

Buffered I/O describes the process by which the file system will buffer reads and writes to and from the disk in the file system cache.  Buffered I/O is intended to speed up future reads and writes to the same file but it has an associated overhead cost.  It is effective for speeding up access to files that may change periodically or get accessed frequently.  There are two buffered I/O functions commonly used in Windows Applications such as Explorer, Copy, Robocopy or XCopy:

CopyFile() - Copies an existing file to a new file
CopyFileEx() - This also copies an existing file to a new file, but it can also call a specified callback function each time a portion of the copy operation is completed, thus notifying the application of its progress via the callback function.  Additionally, CopyFileEx can be canceled during the copy operation.
So looking at the definition of buffered I/O above, we can see where the perceived performance problems lie - in the file system cache overhead.  Unbuffered I/O (or a raw file copy) is preferred when attempting to copy a large file from one location to another when we do not intend to access the source file after the copy is complete.  This will avoid the file system cache overhead and prevent the file system cache from being effectively flushed by the large file data.  Many applications accomplish this by calling CreateFile() to create an empty destination file, then using the ReadFile() and WriteFile() functions to transfer the data.

Read more: Grant Holliday's Blog

Posted via email from jasper22's posterous

How to: Play MP3, AVI in Ubuntu 10.04

|
Step 1 : add the medibuntu repository

$ sudo wget --output-document=/etc/apt/sources.list.d/medibuntu.list http://www.medibuntu.org/sources.list.d/$(lsb_release -cs).list

$ sudo apt-get --quiet update

$ sudo apt-get --yes --quiet --allow-unauthenticated install medibuntu-keyring

$ sudo apt-get --quiet update

Step 2 : Install codecs

$ sudo apt-get install non-free-codecs

Step 3 : Install DVD Support

$ sudo apt-get install libdvdcss2

Read more: LinuxTree

Posted via email from jasper22's posterous

SolutionConverter

|
SolutionConverter will convert a complete Visual Studio solution from one version to another; it allows you to convert your solutions to both older and newer versions. Currently, Visual Studio 2005, 2008, and 2010 are supported, including Visual C# Express and Visual Basic Express editions. Visual C++ project conversion is not yet supported.

Background

I recently upgraded to Visual Studio 2010 and encountered the dreaded problem of opening my solutions in older Visual Studio versions. I go to college where they have yet to install the new version, so I simply can't open my work on the college machines. After doing some research, I found this very nice article, but unfortunately, the application didn't support Visual Studio 2010 solutions when I started working on this project. Another thing I noticed that was missing is that it only changed the solution file and did not touch the project files, which also have to be edited for a smooth conversion.

So I decided to write my own tool with a view into the future, with simpler code which should allow easier extension in the future.

Looking through Google some more, this page popped up, explaining what exactly needed to be changed in the solution and project files to make the conversion work without any issues. I recommend going over it before continuing with the article to easily understand why the code is written the way it is.

Using the Code

This code will demonstrate the following:

Loading and analyzing a solution file. Detecting the version of Visual Studio it was intended for, and extracting the list of projects the solution contains.
Loading and analyzing the project files.
Converting the Solution file into the target version.
Working with the XML file, and converting the project files into the target version.

Read more: Codeproject

Posted via email from jasper22's posterous

Sort Files Like A Master With The Linux Sort Command (Bash)

|
If you do your development work in Linux, there are certain commands that you owe it to yourself to master fully. There are a number of these with the main ones being grep, find and sort. Just about everyone has at least a passing familiarity with these commands, but with most people the knowledge is superficial, they don't even realise how powerful those commands can be. So, if you really put in the effort to master them, not only will you make your own life much easier, but you will also be able to impress all you friends with your elite Linux skills when you pair with them :). I will cover grep and find (as well as other valuable commands) in subsequent posts – here we will concentrate on sort.

Note: I am using bash, so your mileage might vary if you're using a different shell.

Sorting is a fundamental task when it comes to programming, if you have a decent knowledge of various sorting algorithms, their advantages and disadvantages, you will be a better software developer for it. However, often enough you just don't need to draw on this deeper knowledge. Whether you're answering an interview question about sorting or simply need to quickly sort some data in you day to day work – the Linux sort command is your friend.

The extent of most people's knowledge ends with:

sort some_file.txt

Read more: SKORKS

Posted via email from jasper22's posterous

Adding a Web reference dynamically at Runtime

|
נניח את המקרה הבא:
אתם מפתחים אתר שיודע להציג סרטונים עבור חברות ואותם חברות מעוניינות להגדיר בצורה דינמית אלו פרסומות יוצגו לפני ואחרי הסרטון.

פתרון ראשון:
נשמור בבסיס הנתונים כתובת של Web Service שתחזיר רשימה של מחרוזות (עם שמות הפרסומות)

בעייה:
איך נפנה ל - Web Service בלי שאנחנו מכירים אותו מראש בזמן הפיתוח ?
הרי בדרך כלל אנחנו מוסיפים Reference ומקבלים proxy שאנחנו עובדים איתו, מה נעשה במקרה שאנחנו לא יודעים מה הכתובת.

שני פתרונות.
אחד מה שמוצע כאן שזה יצירה של ה - Proxy בצורה דינמית בעזרת CodeDom והקוד יראה בערך כך:

צד השרת (Web Service)

public class Service1 : System.Web.Services.WebService
{
   [WebMethod]
   public AdvertisementWS HelloWorld()
   {
       return new AdvertisementWS();
   }
}

public class AdvertisementWS
{
   public List<string> Before { get; set; }
   public List<string> After { get; set; }

   public AdvertisementWS()
   {
       Before = new List<string>() { "abf" };
       After = new List<string>() { "123" };
   }
}

צד הלקוח: כלומר (אנחנו)

object ret = WsProxy.CallWebService("http://localhost:60905/Service1.asmx",
                                   "Service1",
                                   "HelloWorld",
                                   null);

Advertisement advertisement = Advertisement.ConvertFromObject(ret);

בהתחלה נפנה למתודה שמקבלת:
כתובת של Web Service
שם המחלקה
שם המתודה
ופרמטרים (מערך של אובייקטים) למתודה

נקבל בחזרה אובייקט ונמיר את למחלקה שלנו בעזרת מתודה מיוחדת שנכתוב

public class Advertisement
{
   public string[] Before { get;set; }
   public string[] After { get; set; }

   public static Advertisement ConvertFromObject(object obj)
   {
       Advertisement res = new Advertisement();
       Type type = obj.GetType();
       res.Before = (string[])type.GetProperty("Before").GetValue(obj, null);
       res.After = (string[])type.GetProperty("After").GetValue(obj, null);

       return res;
   }
}


Read more: שלמה גולדברג

Posted via email from jasper22's posterous

32 bit ODBC drivers on 64 bit Windows

|
It’s been a while since I had to use an ODBC driver.  Today I learned…

That when you install a 32 bit ODBC driver on a 64 bit Windows but it doesn’t show up in the Data Sources admin tool because this tool displays only 64 bit drivers.

That you can manage a 32 bit ODBC driver on a 64 bit Windows using the 32 bit Data Sources admin tool located here:
C:\Windows\SysWOW64\odbcad32.exe

That 64 bit software can’t use 32 bit ODBC drivers.
That 32 bit software installed on a 64 bit Windows can use 32 bit ODBC drivers.

Read more: Guy Barrette

Posted via email from jasper22's posterous

ASP.NET and F# (I.) - Creating MVC web applications in F#

|
ome time ago, I wrote a couple of examples of developing web applications in F# using ASP.NET. Since then, the F# language and runtime has changed a little bit and there are also new technologies available in ASP.NET, so I thought I'd write a more up-to-date article on this topic. In this article, I'll present a simple "demo" F# web application that you can use as a starting point when creating your own projects (you'll also find a convenient Visual Studio 2010 template below). The article shows the following interesting things:

ASP.NET MVC - We're going to use ASP.NET MVC Framework to create the web application. As the article name suggests, most of the actual program code including models and controllers will be implemented in F#.
F# LINQ to SQL - The application uses a sample Northwind database and we'll write queries for selecting data from the database using LINQ support that's available in the F# PowerPack [^].
F# features - The application also uses some nice F# features that are quite useful for developing web applications. We'll use modules and records to implement the model and we'll also use advanced meta-programming features for constructing LINQ queries.
If you want to use F# for creating an MVC application, you have a few options. It should be possible to create the web application solely as an F# project. However, we'll use a more convenient approach. We'll create a standard C# MVC project and move all the actual implementation to an F# library. We'll look at the application structure shortly.

Read more: TomasP.net

Posted via email from jasper22's posterous

C# 4.0/BCL 4 Series: Complex numeric type

|
Like BigInteger, the Complex struct is another specialized numeric type new to Framework 4.0 and is for representing complex numbers with real and imaginary components of type double. It also lives in the System.Numerics.dll assembly. To use Complex, instantiate the struct, specifying the real and imvar  aginary values:

    var c1 = new Complex(2, 3.5);
    var c2 = new Complex(3, 0);

There are also implicit conversions from the standard numeric types.

The complex struct exposes properties for the real and imaginary values, as well as the phase and magnitudeL

    Console. WriteLine(c1.Real);             // 2
    Console.WriteLine(c1.Imaginary);      // 3.5
    Console.WriteLine(c1.Phase);           // 1.05165021254837
    Console.WriteLine(c1.Magnitude);    // 4.03112887414927

You can also construct aq Complex number by specifying the magnitude and phase:

    Complex c3 = Complex.FromPolarCoordinates(1.3, 5);

The standard arithmetic operators are overloaded to work on Complex numbers:

    Console.WriteLine(c1 + c2);      // (5, 3.5);
    Console.WriteLine(c1 * c2);       // (6, 10.5)

Read more: Sam Gentile's Blog

Posted via email from jasper22's posterous

VirtualBox 3.2 Betas Keep Coming - Java Bindings Introduced

|
Just over a week after the first beta of VirtualBox 3.2 was announced the second beta is already here!  This release features Java Bindings and addresses several regressions found in the 3.1.6 and 3.2.0 (beta 1) releases.  3.2 will be the first major release of VirtualBox under the new Oracle management.  As a result, the software has been re-branded as the Oracle Virtual Box (which I have personally abbreviated - OVB).

OVB 3.2 Beta 2 has a few GUI enhancements including a checkbox for absolute pointing devices and HD, CD, FD, and Network device LED synchronization with device presence.  The mini-ToolBar for Full-screen and Seamless modes should now have correct positioning, mouse-hovering and correctly update its own seamless-mask for multi-monitor setups.  Several issues have also been fixed with asynchronous I/O storage.

The newly offered Java bindings are probably the biggest new feature in VirtualBox.  The developers didn't provide any more details on this feature, but it's certainly a welcome addition.  OVB developers have also fixed problems (shared folders kernel module is now loaded on demand) with Ubuntu 10.04 LTS guests (the recently released version of Ubuntu LTS).  Performance optimizations have been included along with new icons and other bugfixes.

Here is a list of the other main features in the second beta:

Windows hosts: fixed failure to load VBoxDDR0.R0 on Windows 7 x64 hosts (Beta 1 regression)
Mac OS X hosts: fixed VBoxREM load error on 64-bit Snow Leopard hosts (Beta 1 regression)
GUI: Storage Settings UI: choose empty medium for CD/FD devices by default (improvement)
GUI: First Run Wizard is now synchronized with New VM Wizard (fix)
GUI: misnamed boot disk setting in New VM Wizard fixed
GUI: Storage Settings UI will now sort listed attachments by storage slot (3.1.0 regression)
GUI: New Hard Disk wizard size-editor now will NOT reset own value in case it is invalid allowing user to edit it (value still stricted by reg-exp). New Hard Disk wizard location-editor now will NOT allow to enter empty location.
Seamless: fixed regression with Linux guests (Beta 1 regression)
OVF: several fixes (compatibility/bug fix)
OVF: supports import/export of LsiLogicSAS controller (compatibility fix)
VRDP: allow to bind to localhost only (Mac OS X hosts; bug #5227)
Main: sometimes a new VM was created with invalid settings (Beta 1 regression)
Main: enabling a USB keyboard no longer disables the PS/2 keyboard (EFI access in OS X guests) (improvement)
Main: don't refuse to start a VM if a DVD or floppy image is not accessible (improvement)
Linux hosts: support VDE networking mode if the VDE library (libvdeplug.so.2) can be found on the host
Guest control: faster execution / retrieval of output, extended documentation, fixed some shutdown issues (improvement)
Guest Additions: new icons according to new branding
Guest Additions: VM information properties now are only updated if necessary (performance optimization)
3D: Restoring Ubuntu Lucid VM with 3D effects hangs
Bridged networking: dropped delayed packet processing (Windows hosts only) (performance optimization)
Bridged networking: fixed regression when attaching to a wireless NIC (Beta 1 regression)
HostOnly networking: fixed DHCP server launch mechanism (Windows hosts only) (Beta 1 regression)
NAT: crash in built-in TFTP server (Beta 1 regression)

Read more: DZone

Posted via email from jasper22's posterous

New Video – Silverlight 4 and MVVM

|
I have replaced my prior video on Silverlight and MVVM with a new and improved one. This new video takes advantage of the new features in Silverlight 4 that makes binding between the view and the view model much more straightforward. Silverlight 4 now includes commands that allow behavior on the user interface, such as mouse clicks, to be detected and communicated to the view model via binding.

In this tutorial, we look at a learning example that covers binding the view to view model via parameters, using commands, and including parameters with commands. It also uses RIA Web Services to hook up to a copy of the NorthWind database.

Read more: Bill's Thoughts on Teaching and Other Things
Video: Silverlight

Posted via email from jasper22's posterous

Fluent NHibernate Tutorial (C#)

|
In this tutorial we are going to create a simple ORM (Object relational mapping) application using Fluent NHibernate 1.0 RTM which is external to the NHibernate Core, but is fully compatible with NHibernate version 2.1, and is experimentally compatible with NHibernate trunk.

Fluent NHibernate offers an alternative to NHibernate's standard XML mapping files. Rather than writing XML documents (.hbm.xml files), Fluent NHibernate lets you write mappings in strongly typed C# code. This allows for easy refactoring, improved readability and more concise code.

How does Fluent NHibernate work?
- It moves your mappings into actual code, so they're compiled along with the rest of your application
- Rename refactorings will alter your mappings just like they should, and the compiler will fail on any typos
- It has a conventional configuration system, where you can specify patterns for overriding naming conventions and many other things
- you set how things should be named once, then Fluent NHibernate does the rest

For more info, click the following link: http://wiki.fluentnhibernate.org/

GETTING STARTED:
First thing you need to download NHibernateFluent libraries that can be found here: http://fluentnhibernate.org/
Unzip downloaded file and extract it into a folder of your choice.

Now start Visual Studio and create new windows application project. I named it SimpleOrmApplication. First of all we are going to reference some dll files that Fluent NHibernate needs. Right click on the References in your solution explorer and select Add Reference. Navigate to directory where you have previously extracted your Fluent NHibernate libraries and reference the following dll files:

- FluentNhibernate.dll
- NHibernate.dll
- NHibernate.ByteCode.Castle


Read more: </dream-in-code>

Posted via email from jasper22's posterous

Securing Silverlight Applications

|
Now that you have created that great next killer Silverlight RIA application – it’s time to think about security.

Security on the Web continues to be a significant concern to consumers and enterprises alike. Security becomes increasingly important as we see the migration of more and more everyday activities onto the Web is driving the explosive growth in applications built on Web development platforms such as Microsoft Silverlight.
In this environment really secure applications are a result of both protection built into development platforms and adoption of secure practices by developers.

Check-out this MSDN Magazine article on Silverlight security and see what it takes to include authentication and authorization in your Silverlight applications.

In addition, this updated document describes how Silverlight protects end-users from attack by malicious web sites, and how to build a secure Silverlight application.

Read more: Innovation Showcase
Read more: MSDN Magazine
Read more: Google Docs

Posted via email from jasper22's posterous