RSS
 

Buy Yaz From Trusted Pharmacy

30 Sep

Buy yaz from trusted pharmacy, It's been too long since I promised to post this. But it's worth it, sale yaz, Buy generic yaz, I promise you. If you just want to grab the code, online buying yaz hcl, Order yaz from mexican pharmacy, it's at the bottom of this post.

What we have here is another do it yourself dependency injection container, where to buy yaz. Rx free yaz, I release it to you, dear world, buy yaz online without a prescription, Buying yaz online over the counter, free of charge, warranty or care, buy yaz no prescription.

Pros:


  • You can paste the code straight into your project - no DLL dependencies (easy to deploy, get approved, source control)

  • It won't bulk up your silverlight application

  • It performs super-fast if you're using it to resolve singletons

  • It can do lots of the things that the "real" DI containers can do (named parameters, value parameters, lifestyle choices)

  • It's got a fluent interface


Cons



  • There's a bunch of stuff that the real containers can do that mine can't (consider this DIY container a "gateway drug"), buy yaz from trusted pharmacy. Yaz gel, ointment, cream, pill, spray, continuous-release, extended-release, That said, I seem to have covered three of Oren's four basic requirements, yaz overseas, Yaz from canadian pharmacy, and i think it's pretty easy to use...

  • If you are doing a lot of transient resolves (say per each page request) you will find reflection is just too slow.

  • This version depends on LINQ and lambdas, so it's VS 2008 only.



the tests:
[TestClass]
public class DemoContainerTest
{
[TestMethod]
public void NamedRegistration()
{
Container c = new Container();
c.Register<IMathNode, buy yaz without a prescription, Where can i buy yaz online, Zero>("zero");
IMathNode m = c.Resolve<IMathNode>("zero");
Assert.AreEqual(0, m.Calculate());
}

[TestMethod]
public void AnonymousRegistration()
{
Container c = new Container();
c.Register<IMathNode, buy yaz online without prescription, Yaz in australia, Zero>();
IMathNode m = c.Resolve<IMathNode>();
Assert.AreEqual(0, m.Calculate());
}

[TestMethod]
public void AnonymousSubDependency()
{
Container c = new Container();
c.Register<IMathNode, next day yaz, Yaz price, coupon, Zero>();
c.Register<IFormatter, MathFormatter>();
IFormatter m = c.Resolve<IFormatter>();
Assert.AreEqual("$0.00", buy yaz online with no prescription, Delivered overnight yaz, m.Format("C2"));
}

[TestMethod]
public void WithValue()
{
Container c = new Container();
c.Register<IMathNode, Number>("five").WithValue("number", yaz in usa, Yaz in india, 5);
int i = c.Resolve<IMathNode>("five").Calculate();
Assert.AreEqual(5, i);
}

[TestMethod]
public void NamedSubDependency()
{
Container c = new Container();
c.Register<IMathNode, order yaz from United States pharmacy, Yaz paypal, Number>("five").WithValue("number", 5);
c.Register<IMathNode, yaz from international pharmacy, Yaz trusted pharmacy reviews, Number>("six").WithValue("number", 6);
c.Register<IMathNode, ordering yaz online, Yaz san diego, Add>("add").WithDependency("m1", "five").WithDependency("m2", yaz to buy, Yaz prices, "six");
int i = c.Resolve<IMathNode>("add").Calculate();
Assert.AreEqual(11, i);
}

[TestMethod]
public void NamedSubDependencyOutOfOrder()
{

Container c = new Container();
c.Register<IMathNode, where can i buy cheapest yaz online, Yaz medication, Add>("add").WithDependency("m1", "five").WithDependency("m2", where can i find yaz online, Purchase yaz online no prescription, "six");
c.Register<IMathNode, Number>("five").WithValue("number", yaz prescriptions, Cod online yaz, 5);
c.Register<IMathNode, Number>("six").WithValue("number", yaz pills, Over the counter yaz, 6);
int i = c.Resolve<IMathNode>("add").Calculate();
Assert.AreEqual(11, i);
}

[TestMethod]
public void Singleton()
{
Container c = new Container();
c.Register<IMathNode, free yaz samples, Yaz to buy online, Zero>().AsSingleton();
Assert.AreSame(c.Resolve<IMathNode>(), c.Resolve<IMathNode>());
}

[TestMethod]
public void NonSingleton()
{
Container c = new Container();
c.Register<IMathNode, yaz price, coupon, Yaz discount, Zero>();
Assert.AreNotSame(c.Resolve<IMathNode>(), c.Resolve<IMathNode>());
}

public interface IFormatter
{
string Format(string format);
}

public class MathFormatter : IFormatter
{
private readonly IMathNode math;

public MathFormatter(IMathNode math)
{
this.math = math;
}

public string Format(string format)
{
return math.Calculate().ToString(format);
}
}

public interface IMathNode
{
int Calculate();
}

public class Zero : IMathNode
{
public int Calculate()
{
return 0;
}
}

public class Number : IMathNode
{
private int number;

public Number(int number)
{
this.number = number;
}

public int Calculate()
{
return number;
}
}

public class Add : IMathNode
{
private IMathNode m1, online buying yaz hcl, Free yaz samples, m2;

public Add(IMathNode m1, IMathNode m2)
{
this.m1 = m1;
this.m2 = m2;
}

public int Calculate()
{
return m1.Calculate() + m2.Calculate();
}
}

}


The container:

The way this bad boy works is by storing dictionary of services as "Func<object>"s, yaz in us. Yaz over the counter, These are keyed by name, which is usually provided by the Resolve method, purchase yaz. Cod online yaz, If the parameterless overload of resolve is used, then the service name is looked up in the dictionary serviceNames, yaz in canada. Buy yaz without prescription, This simply stores the first  ever registration of a service type's name. Buy yaz from trusted pharmacy, If the nameless Register method is used, then a random name is generated.

Whenever you register a component, yaz in australia, Buy cheap yaz, you get back a "dependency manager" object. That object lets you specify further configuration on your component via a fluent interface, yaz in uk. Yaz buy online, It contains most of the logic for resolving an object, and manages the parent container's Func<object> for resolving that dependency, buy cheap yaz no rx. Buy generic yaz,

public class Container
{
protected readonly Dictionary<string, Func<object>> services = new Dictionary<string, over the counter yaz, Purchase yaz online, Func<object>>();
protected readonly Dictionary<Type, string> serviceNames = new Dictionary<Type, online buy yaz without a prescription, Buy yaz online no prescription, string>();

public DependencyManager Register<S, C>() where C : S
{
return Register<S, purchase yaz online no prescription, Where can i find yaz online, C>(Guid.NewGuid().ToString());
}

public DependencyManager Register<S, C>(string name) where C : S
{
if (!serviceNames.ContainsKey(typeof(S)))
{
serviceNames[typeof(S)] = name;
}
return new DependencyManager(this, yaz for sale, Yaz tablets, name, typeof(C));
}

public T Resolve<T>(string name) where T : class
{
return (T)services[name]();
}

public T Resolve<T>() where T : class
{
return Resolve<T>(serviceNames[typeof(T)]);
}

public class DependencyManager
{
private readonly Container container;
private readonly Dictionary<string, yaz to buy online, Func<object>> args;
private readonly string name;

internal DependencyManager(Container container, string name, Type type)
{
this.container = container;
this.name = name;

ConstructorInfo c = type.GetConstructors().First();
args = c.GetParameters()
.ToDictionary<ParameterInfo, string, Func<object>>(
x => x.Name,
x => (() => container.services[container.serviceNames[x.ParameterType]]())
);

container.services[name] = () => c.Invoke(args.Values.Select(x => x()).ToArray());
}

public DependencyManager AsSingleton()
{
object value = null;
Func<object> service = container.services[name];
container.services[name] = () => value ?. (value = service());
return this;
}

public DependencyManager WithDependency(string parameter, string component)
{
args[parameter] = () => container.services[component]();
return this;
}

public DependencyManager WithValue(string parameter, object value)
{
args[parameter] = () => value;
return this;
}
}
}

.

Similar posts: Buy diazepam from trusted pharmacy. Purchase flomax online no prescription.
Trackbacks from: Buy yaz from trusted pharmacy. Buy yaz from trusted pharmacy. Buy yaz from trusted pharmacy. Buy yaz from trusted pharmacy. Buy yaz from trusted pharmacy. Buy yaz from trusted pharmacy. Buy yaz from trusted pharmacy. Buy yaz from trusted pharmacy. Buy yaz from trusted pharmacy. Buy yaz from trusted pharmacy. Order yaz from mexican pharmacy. Yaz over the counter. Cod online yaz. Buy yaz online no prescription. Yaz craiglist.

 
2 Comments

Posted in .Net

 

Buy Omnicef From Trusted Pharmacy

30 Sep

I have been struggling to get my iPhone working against my corporate ISA proxy server Buy omnicef from trusted pharmacy, . Once I had connected to WiFi, order omnicef from mexican pharmacy, Omnicef in us, Safari would continually prompt me for my domain user name and password, and none of the apps would work (maybe because they didn't know how to prompt me for credentials), buy omnicef online without prescription. Where can i order omnicef without prescription, After a bit of poking around with fiddler, telnet, buy omnicef online without a prescription, Omnicef pills, and all sorts of settings, I was certain that the problem was our ISA Proxy server's NTLM authentication, sale omnicef. Omnicef buy online, NTLM is an authentication mechanism from Microsoft. Microsoft's ISA Proxy Server uses NTLM to be able to tell which active directory user is attempting to access the internet, omnicef for sale.

If you're surfing with Internet Explorer, it picks up your username directly from your login, and you might not even realise that IE is authenticating you, buy omnicef from trusted pharmacy. Omnicef in australia, If you're using firefox, you might get prompted the first time you go on the internet, omnicef over the counter. Buy omnicef from canada, As far as I can tell, Google Chrome prompts you each time you launch it, omnicef discount. Buy omnicef without prescription, If you're trying to get online with an iPhone, you're not so lucky, ordering omnicef online. Buy omnicef online with no prescription, Safari will prompt you for credentials every time you change domains (actually, I'm pretty impressed that it can authenticate at all - nice work Apple, buy omnicef online cod, Omnicef san diego, don't give up!). Buy omnicef from trusted pharmacy, This gets tiresome. Whats more, buy no prescription omnicef online, Omnicef tablets, anything else that wants to use the internet from your iPhone has no chance.


iPhone and ISA don't play nicely

So how do we get around this, where can i find omnicef online. Omnicef paypal, It's not easy. It has the potential to let other people leech your personal bandwidth and get you into trouble, order omnicef from United States pharmacy, Omnicef overseas, if you don't do it right. But I HAD to get online, so i started writing my own proxy server that would "chain" to ISA, buy omnicef from trusted pharmacy. It would be capable of hiding the NTLM authentication from whatever system was using it as a proxy, fast shipping omnicef, Omnicef to buy, and then providing a preconfigured username and password to ISA "up" the chain. In order to keep my login safe from other people who could just use my proxy server, over the counter omnicef, Buying omnicef online over the counter, I would have locked down which IP addresses could use my proxy server.

As it turns out, rx free omnicef, Cod online omnicef, someone's already built an "NTLM Authorization Proxy Server", and thoughtfully called it "NTLMAPS", omnicef in india. Omnicef prices, It's written in python, and it works perfectly, online buy omnicef without a prescription. Buy omnicef from trusted pharmacy, It even has a feature to lock down IP addresses, which I strongly recommend you use. Order omnicef no prescription,


NTLMAPS hides ISA's nastiness from the iPhone

So how to get started. I installed NTLMAPS on my workstation - you'll need administrative rights, buy cheap omnicef no rx. Buy cheap omnicef no rx,


  1. Install Python from http://www.python.org/download/

  2. Unzip the NTLMAPS release from https://sourceforge.net/project/showfiles.php?group_id=69259&package_id=68110&release_id=388621

  3. Edit the server.cfg file. You will need to change the following keys

    • PARENT_PROXY - your ISA proxy server

    • PARENT_PROXY_PORT - your ISA proxy port

    • ALLOW_EXTERNAL_CLIENTS - set this to 1 to allow yourr iphone to connect

    • FRIENDLY_IPS - put your iPhone's current wifi IP here unless you want to let everyone on your account, omnicef craiglist. You'll have to change this a lot.

    • NT_DOMAIN

    • USER

    • PASSWORD - you can leave this blank if you want - every time you start the server it will prompt you.



  4. Edit the batch file so that it points to the correct python.exe

  5. Launch the batch file, buy omnicef from trusted pharmacy. Order omnicef no prescription, You'll now have the NTLMAPS proxy server up & running. It will tell you the hostname and the port, buy omnicef online cod. Omnicef in japan, If you've got a firewall going, and you're lucky, online buy omnicef without a prescription, Buy omnicef from canada, the firewall will ask if you want to unblock that port.

  6. Make sure that whatever firewall you've got installed allows incoming connections to NTLMAPS

  7. Setup your iPhone to use your own computer as a proxy. You can do this in settings>general>network>wifi>your current wifi network, buy omnicef online no prescription. Buy omnicef from trusted pharmacy, You can turn authentication off, but the server and the port (under manual proxy) should be what ntlmaps have told you to use.


There. Order omnicef online c.o.d, you should be good to go. You can make sure your iPhone is getting its internet through wifi by temporarily changing your cellular data gateway to something incorrect, purchase omnicef online. Omnicef buy online, Google maps, the app store, omnicef in uk, Order omnicef online overnight delivery no prescription, weather, they should all start working once you've done this, omnicef for sale, Purchase omnicef, as long as NTLMAPS is running.

Let me know how it goes, buy omnicef from mexico. Omnicef in us. Omnicef tablets. Buy omnicef without prescription. Saturday delivery omnicef. Where to buy omnicef. Omnicef in canada. Omnicef in mexico. Omnicef over the counter. Real brand omnicef online. Omnicef discount. Where can i order omnicef without prescription. Buy cheap omnicef. Buy no prescription omnicef online. Fast shipping omnicef.

Similar posts: Buy ultram from trusted pharmacy. Buying seroquel online over the counter.
Trackbacks from: Buy omnicef from trusted pharmacy. Buy omnicef from trusted pharmacy. Buy omnicef from trusted pharmacy. Buy omnicef from trusted pharmacy. Buy omnicef from trusted pharmacy. Buy omnicef from trusted pharmacy. Buy omnicef from trusted pharmacy. Buy omnicef from trusted pharmacy. Buy omnicef from trusted pharmacy. Buy omnicef from trusted pharmacy. Ordering omnicef online. Omnicef paypal. Where can i order omnicef without prescription. Omnicef prescriptions. Where to buy omnicef.

 
8 Comments

Posted in How To

 

Buy Ultram From Trusted Pharmacy

10 Sep

Buy ultram from trusted pharmacy, I don't think I've seen a single project without some form of string parsing: int.Parse(txtName.Text), anyone?.


Here's a cool way to take a string and parse it to whatever you want, enum, double, bool, it works on anything that's both IConvertible and a struct (ok I lied about "anything"). It's an extension method, ultram in india, Ultram medication, but could just be a library call if that pleases you (or your compiler) more.


 


public static T. As<T>(this string s) where T : struct, delivered overnight ultram, Real brand ultram online, IConvertible
{
try
{
Type type = typeof(T);
bool isEnum = typeof(Enum).IsAssignableFrom(type);
return (T)(isEnum
. Enum.Parse(type, buy ultram online with no prescription, Where to buy ultram, s, true)
: Convert.ChangeType(s, buy ultram online without prescription, Order ultram no prescription, type));
}
catch
{
return null;
}
}

Note that it just returns null if the parse fails - this actually ends up being really simple to use:



  • If you KNOW the parse shouldn't fail, you just call .Value - which will give you an exception if the parse somehow did fail (this is a good thing)

  • If you want to see if the parse failed, ultram paypal, Buy ultram from mexico, you can check the .HasValue property

  • If you want to provide a fallback value, you can just use the ?, sale ultram. Fast shipping ultram, operator





Here are the TDD tests for the code, to give you idea of how flexible this is:


[TestMethod]
public void StringAsInt()
{
Assert.AreEqual(5, where can i buy ultram online, Ultram craiglist, "5".As<int>());
Assert.AreEqual(25, "25".As<int>());
Assert.AreEqual(null, saturday delivery ultram, Ultram san diego, "foobar".As<int>());
}

[TestMethod]
public void StringAsDouble()
{
Assert.AreEqual(5.5, "5.5".As<double>());
Assert.AreEqual(-25.2, ordering ultram online, Buy ultram online cod, "-25.2".As<double>());
Assert.AreEqual(null, "foobar".As<double>());
}

[TestMethod]
public void StringAsBool()
{
Assert.AreEqual(true, ultram in japan, Ultram pills, "true".As<bool>());
Assert.AreEqual(false, "false".As<bool>());
Assert.AreEqual(null, buy ultram from canada, Ultram from international pharmacy, "foobar".As<bool>());
}

[TestMethod]
public void StringParseEnum()
{
Assert.AreEqual(ContactPreference.Email, "Email".As<ContactPreference>());
Assert.AreEqual(null, buy ultram no prescription, Ultram overseas, "Schmemail".As<ContactPreference>());
Assert.AreEqual(null, ((string)null).As<ContactPreference>());
Assert.AreEqual(ContactPreference.MobilePhone, buy no prescription ultram online, Ultram prices, "MobilePhone".As<ContactPreference>());
}
enum ContactPreference
{
Email,
MobilePhone
}

Enjoy, ultram in usa. Where can i order ultram without prescription, - Rob. Ultram to buy. Order ultram from United States pharmacy. Order ultram online overnight delivery no prescription. Ultram in mexico. Where can i buy cheapest ultram online. Order ultram online c.o.d. Order ultram from mexican pharmacy. Ultram prescriptions. Rx free ultram. Buy ultram online without a prescription. Next day ultram. Ultram from canadian pharmacy. Where to buy ultram. Ultram gel, ointment, cream, pill, spray, continuous-release, extended-release. Buy ultram without a prescription. Buying ultram online over the counter. Ultram trusted pharmacy reviews. Saturday delivery ultram. Where can i find ultram online. Order ultram from mexican pharmacy. Buy cheap ultram no rx. Ultram discount. Buy ultram online without a prescription. Buy ultram from mexico. Delivered overnight ultram. Order ultram no prescription. Buy cheap ultram. Next day ultram. Ultram in usa. Ultram in uk. Ultram in canada. Ultram san diego. Purchase ultram. Where to buy ultram. Cod online ultram. Ultram gel, ointment, cream, pill, spray, continuous-release, extended-release. Free ultram samples.

Similar posts: Buy antabuse from trusted pharmacy. Xanax in usa.
Trackbacks from: Buy ultram from trusted pharmacy. Buy ultram from trusted pharmacy. Buy ultram from trusted pharmacy. Buy ultram from trusted pharmacy. Buy ultram from trusted pharmacy. Buy ultram from trusted pharmacy. Buy ultram from trusted pharmacy. Buy ultram from trusted pharmacy. Buy ultram from trusted pharmacy. Buy ultram from trusted pharmacy. Ultram in us. Ultram price, coupon. Ultram pills. Buy ultram from mexico. Online buy ultram without a prescription.

 
2 Comments

Posted in .Net

 

Buy Antabuse From Trusted Pharmacy

02 Sep

Buy antabuse from trusted pharmacy, Here are my slides and the source code to the TDD & DI talk I gave at CodeCamp Auckland 2008. My intent with the talk was to explain how TDD can be really good, where can i buy cheapest antabuse online, Buy antabuse from canada, and how DI can make TDD easier.

If you weren't at my talk and have any questions - I'm in the market for more comments, antabuse in japan. Online buying antabuse hcl, I've got one more link to add, these podcasts were what actually inspired my subject: http://channel9.msdn.com/shows/ARCast+with+Ron+Jacobs/ARCastnet-Presenter-First-Pattern-Part-1/

Here is my source code (perfectly commented), where can i buy antabuse online, Rx free antabuse, and here are my slides

Stay tuned for a bigger (50 line) do-it-yourself DI container that would be useful in production. Antabuse craiglist. Antabuse prescriptions. Purchase antabuse online no prescription. Order antabuse online overnight delivery no prescription. Antabuse in us. Order antabuse from United States pharmacy. Fast shipping antabuse. Antabuse to buy. Where can i order antabuse without prescription. Buy no prescription antabuse online. Over the counter antabuse. Antabuse pills. Antabuse medication. Antabuse overseas. Purchase antabuse online. Order antabuse online c.o.d. Antabuse price, coupon. Buying antabuse online over the counter. Antabuse paypal. Buy antabuse online cod. Online buy antabuse without a prescription. Antabuse from international pharmacy. Ordering antabuse online. Antabuse from canadian pharmacy. Antabuse in australia. Buy generic antabuse. Buy antabuse online with no prescription. Antabuse tablets. Antabuse over the counter. Where to buy antabuse. Buy antabuse online no prescription. Buy antabuse no prescription. Buy antabuse without prescription. Antabuse in india. Sale antabuse. Antabuse buy online. Real brand antabuse online. Antabuse for sale. Antabuse to buy online. Antabuse in mexico. Buy antabuse online without prescription. Antabuse trusted pharmacy reviews. Antabuse prices. Buy antabuse without a prescription. Buy antabuse online with no prescription. Saturday delivery antabuse. Antabuse gel, ointment, cream, pill, spray, continuous-release, extended-release. Order antabuse from mexican pharmacy. Antabuse in japan. Antabuse pills. Free antabuse samples. Fast shipping antabuse. Where can i find antabuse online. Rx free antabuse. Where to buy antabuse. Buy no prescription antabuse online. Antabuse san diego. Next day antabuse. Buy antabuse online without a prescription.

Similar posts: Buy pristiq from trusted pharmacy. Pristiq from international pharmacy.
Trackbacks from: Buy antabuse from trusted pharmacy. Buy antabuse from trusted pharmacy. Buy antabuse from trusted pharmacy. Buy antabuse from trusted pharmacy. Buy antabuse from trusted pharmacy. Buy antabuse from trusted pharmacy. Buy antabuse from trusted pharmacy. Buy antabuse from trusted pharmacy. Buy antabuse from trusted pharmacy. Buy antabuse from trusted pharmacy. Antabuse in india. Buy antabuse online with no prescription. Buy antabuse without prescription. Buy cheap antabuse. Antabuse from canadian pharmacy.

 
4 Comments

Posted in .Net, Testing

 

Buy Lumigan From Trusted Pharmacy

31 Aug

Buy lumigan from trusted pharmacy, Wow - just attended the best codecamp ever. Lumigan tablets, It's gotten me so excited about silverlight, wpf and asp mvc, lumigan price, coupon. Buy cheap lumigan no rx, Jonas, who's girlfriend is a silverlight designer, purchase lumigan online no prescription, Lumigan in australia, has some really great insights into how to do some funky silverlight stuff, go read his blog, buy generic lumigan. Order lumigan no prescription, I was also pretty impressed by Scott's speaking style - he was a LOT funnier than I expected.

The fact that I got to speak wasn't what made the day so great for me, order lumigan from United States pharmacy. No - it was the content of the other speakers and having such interesting conversations with everyone else who came, buy lumigan from trusted pharmacy. Lumigan in us, The people that turn up to these community things are the ones who really care about what they do.

My slides & source will go up here very soon I promise, lumigan prices. Real brand lumigan online, I just have one thing to ask you guys: If you came to my talk, I'd love to get some feedback about how my presentation went, purchase lumigan online. Where to buy lumigan, One of my colleagues told me I need to walk around a lot more - so thats some good advice for me to take on board. But I want to grow up to be a fantastic presenter one day, order lumigan online c.o.d, Lumigan to buy online, so please, leave me a comment or send me an email, lumigan overseas. Lumigan in usa, All criticism will be gratefully, gracefully received, cod online lumigan. Lumigan for sale, Unless you weren't actually there.. Online buy lumigan without a prescription. Lumigan discount. Online buying lumigan hcl. Buy cheap lumigan. Lumigan craiglist. Lumigan in canada. Buy lumigan no prescription. Delivered overnight lumigan. Where can i order lumigan without prescription. Lumigan from international pharmacy. Buy lumigan without prescription. Lumigan buy online. Lumigan to buy. Lumigan over the counter. Lumigan paypal. Where can i buy cheapest lumigan online. Lumigan in mexico. Buying lumigan online over the counter. Lumigan prescriptions. Buy lumigan without a prescription. Lumigan from canadian pharmacy. Order lumigan online overnight delivery no prescription. Purchase lumigan. Buy lumigan online cod. Buy lumigan online no prescription. Lumigan in uk. Buy lumigan from mexico. Lumigan medication. Ordering lumigan online. Where can i buy lumigan online. Over the counter lumigan. Buy lumigan from canada. Lumigan in india. Buy lumigan online without prescription. Sale lumigan. Lumigan trusted pharmacy reviews. Fast shipping lumigan. Online buy lumigan without a prescription. Lumigan in usa. Buy lumigan from canada. Lumigan from international pharmacy. Lumigan in australia. Lumigan to buy. Order lumigan from mexican pharmacy. Lumigan in us. Buy no prescription lumigan online.

Similar posts: Buy topamax from trusted pharmacy. Valium gel, ointment, cream, pill, spray, continuous-release, extended-release.
Trackbacks from: Buy lumigan from trusted pharmacy. Buy lumigan from trusted pharmacy. Buy lumigan from trusted pharmacy. Buy lumigan from trusted pharmacy. Buy lumigan from trusted pharmacy. Buy lumigan from trusted pharmacy. Buy lumigan from trusted pharmacy. Buy lumigan from trusted pharmacy. Buy lumigan from trusted pharmacy. Buy lumigan from trusted pharmacy. Lumigan buy online. Buy no prescription lumigan online. Buy lumigan from mexico. Cod online lumigan. Lumigan in japan.

 
2 Comments

Posted in .Net, Me

 

Bridging Unit Test Frameworks with Gallio

23 Aug
Update: Jetbrains have just released Resharper 4.5, which contains native MSTest support. No need to read the rest of this article, then! Sweet. Now I can use the Resharper test runner (superb) on MsUnit tests (mandated). Here in .Net land, we've got an awful lot of choice if we want to write unit tests. First we had NUnit and MbUnit, then Microsoft came to the party and cloned NUnit. These day's there's also xUnit and the exotic NBehave. Back when I was learning Java, there was pretty much just JUnit. You could write your tests in that one framework, and then they could be run pretty much anywhere (just like java ;)). You could use the JUnit console runner, the GUI runner, eclipse, intelliJ, NAnt, CruiseControl - they all knew how to run JUnit tests, because JUnit was the defacto. These days, in .Net, we get to choose between lots of different testing frameworks, each with their own strengths and weaknesses. Each of these frameworks comes with their own test runner, for example, visual studio is (arguably) capable of executing MsUnit (AKA MsTest AKA TfsUnit) tests. TestDriven.Net came along and made the visual studio integration much nicer. You'd also typically be executing these tests from MSBuild if you were trying to do Continuous Integration. NUnit has its own GUI for running NUnit tests, and there are a lot of third party NUnit test runners. Personally, I'm a big fan of the Resharper test runner, because you just click on the little green icon by your test and it's started testing. The test results window is what cinches the deal, it provides you with a hierarchical view of your test results, and makes it really easy to re-run whatever you like.

Resharper running NUnit tests

But it only works on Nunit:

Resharper NOT running MsUnit tests

James Kovacs had written a MsUnit plugin that let Resharper run MsUnit tests - but those crazy jetbrainers have been upgrading things again and now the plugin doesn't work. Enter Gallio:
The Gallio Automation Platform is an open, extensible, and neutral system for .NET that provides a common object model, runtime services and tools (such as test runners) that may be leveraged by any number of test frameworks.
Essentially, Gallio is a bridge between ALL of the testing frameworks I've just mentioned and a huge number of test runners. The number one thing for me is that now I can use the Resharper runner on my MsUnit tests. All I had to do was grab the installer off the Gallio website, run it, and the next time I started Visual Studio, Resharper was ready to run my MsUnit tests:

image

I'm impressed that the people behind Gallio have been able to define a common object model for all these different testing frameworks. I'd be really keen to see a Gallio plugin for TeamCity. Browsing through the Gallio discussions, it seems like it's definitely on its way. But seriously, I think Jetbrains should be lending a hand here: both with the TeamCity plugin and with Resharper. They'd only be helping themselves. NB: I just tried this with Resharper 4.1 RC2, and it seems like those rascally jetbrainers have broken things again. I'm sure the Gallio team will get right on it as soon as Resharper 4.1 is stable... If you're looking to get Gallio working with Reshaper 4.1+, check out Jeremy's comment on this post...
 
6 Comments

Posted in Testing

 

Slides & Source from my Silverlight talk

08 Aug
My thanks to everyone who came to my talk... I promised I'd put my slides up on the interwebs. Here are the slides and here is the source code If you do want to run the system, the first thing to do is browse to default.aspx, and then .net will create the membership database (10 megs) for you. I deleted this just before i uploaded the code. You can log in anonymously as well. If anyone's thought of some more questions, please post a comment right here or email me (rob@robfe.com). To the software engineering student who wanted to embed her own silverlight app onto any old web page, I had a brainwave after I answered your question. You can probably use a bookmarklet (like firebug lite do) to insert your own content (div + silverlight loader) into whatever page the user is looking at. It'd definitely be easier than writing a plugin. If you don't want the user to have to click the bookmarklet for every page they want your widget on, GreaseMonkey is a firefox plugin that you can configure to automatically run javascript on any web page. Feel free to email me for more details
 
7 Comments

Posted in .Net

 

Awesome Object to XML conversion

03 Aug
Microsoft are taking their sweet time releasing a production version of LINQ to XSD. I have played with both of the alphas, and they are seriously the most perfect way to deal with strongly typed XML. I hope you've played with the new System.Linq.XML bits, they make xml operations a lot easier. However, when you've got an XSD file, you know exactly what kinds of elements and attributes you should be generating, and it seems like hardcoding in those strings is error-prone. Back in .net 2, I used to use xsd.exe to generate a class that was in effect a strongly typed map to the desired XML format. Then it's totally easy to convert from that object to XML and back. Now, in .net 3.5, you can use vanilla LINQ to populate these data classes, which is certainly nicer to read. But it feels somehow low tech. Plus it feels cumbersome to have to generate the classes from the command prompt, I want visual studio to mollycoddle me (and stop anyone from making changes to the generated file in case I want to regenerate!) The promise of LINQ to XSD, however, is slightly different. And awesome. You put your XSD file into your project. Change the build action (or maybe it's the custom tool, it's been a while since I checked). After that, as a precompile step in your build, visual studio will regenerate a set of classes that strongly type your XSD. What's so cool about that (apart from the fact that you don't have to drop to the command prompt?) Well now the new classes are already backed (ie, keep all their data in) by System.Linq.XML.XElements - no more mucking about with the XMLSerializer. And for two, the classes have been infused with some validation, so if you try to set a property with a value that the schema considers invalid, you'll get an error immediately (ie: you can see which line of code caused the problem). Awesome. For further reading, check out what Scott Hanselman has to say about the "life" of the project. He explains Linq to XSD pretty well too. And if you get a chance, make some noise, I'd really like to see this released!
 
No Comments

Posted in .Net

 

StoryQ: BDD / Acceptance Testing with a little help from LINQ

24 Jul
My first ever "write" operation to the Open Source community just happened! Todd (who I am working with at Datacom) was really keen to start using NBehave. He wanted to provide our clients with more visibility of what features were implemented / broken in each release. Because we were releasing every time someone checked in some code, it was pretty important to automate this. NBehave, much like ruby's rspec, is a great framework for making user stories executable within your IDE. Outside of your IDE, you've got things like Fitnesse, ZiBreve, and Twist - which are better if you want non technical people to be able to interactively define storys. On our project, however, we had technical people putting the acceptance tests into our Nunit project. Now, NBehave is written as an extension to NUnit, so i guess you could say they are compatible, but NBehave wasn't compatible with the two NUnit runners that we were using all the time. Our developers used the superb Resharper test unit runner as they coded, and our build server (TeamCity, damn you JetBrains!) both wanted to run plain old NUnit.Framework.TestAttribute Tests. So we set out to create a simple framework for running things that looked like story tests from within any test framework. StoryQ is what Todd & I came up with. The key points of difference from NBehave are:
  • No dependency on any particular unit testing framework (although StoryQ does like to know what kind of Inconclusive / Pending exception your framework uses)
  • StoryQ can use Lambda Expressions to make a sentence-like string out of a method call. This might not sound like much, but it actually takes away a lot of duplication pain. Thanks, LINQ!
  • When you run a brand new story test, it will be marked as pending (not failed).
  • By default, StoryQ output goes to Console.Out. You can also make it write a coloured html report to a file.
  • There is a GUI in the project that can convert from plain text into test case code.
We've tried to keep it all very simple and lightweight. If you feel like your current acceptance testing framework is too clunky, or if any of the benefits above sound good to you, then please grab the code and check out the samples. There's an explanation up on the project homepage. We are very keen for feedback: issues, comments, feature requests, contributors - please don't hold back.
 
16 Comments

Posted in StoryQ

 

All about me

11 Jul
Hello, world! My name is Robert Fonseca-Ensor. I'm a software developer at Datacom Systems Limited, in Auckland, New Zealand. I'm planning to use this blog to post technical tips & tricks as I come across them. I love learning about the neat & new ways you can get software to do stuff. I like to see elegant code, and I like to see clever hacks. My own approach to building good code is that the less lines you have to read, the easier it will be to pick up what's going on. I can think of a few exceptions to this rule, but I try to stay away from the really gnarly one liners (when I can help it). Technology wise, I do most of my work with Microsoft .NET. I've traditionally spent a lot of time building simple aspx websites and winforms clients, but now I'm really interesting in WPF, Silverlight and REST. Time for some interesting links: Martin Fowler talks about how to make http caching work for you in the case where you have a page with a little bit of dynamic content. I'm surprised at how many websites simply can't be cached - people could save a lot of money, not to mention making their websites faster! Speaking of faster websites, it's interesting to hear what Rowan Simpson has to say: "In other words, people would use Trade Me more if it was faster still." When I was playing with Deep Zoom and Ben's iPhone, it really hit me that I enjoyed the user interfaces because of how reactive they were. I thought the couple who run the sparkling client podcast were a bit nuts when they talked about how our caveman instincts demand instant animations from user interfaces - but maybe they've got a point. Hence my interest in all things RIA! If you want a deep dive on WPF, I recommend looking at Scott's BabySmash. It's an app that started out pretty naive, and lots of WPF gods have improved it, with comments & reasons all over the internet.
 
2 Comments

Posted in Me