<?xml version='1.0' encoding='UTF-8'?><?xml-stylesheet href="http://www.blogger.com/styles/atom.css" type="text/css"?><feed xmlns='http://www.w3.org/2005/Atom' xmlns:openSearch='http://a9.com/-/spec/opensearchrss/1.0/' xmlns:georss='http://www.georss.org/georss' xmlns:gd='http://schemas.google.com/g/2005' xmlns:thr='http://purl.org/syndication/thread/1.0'><id>tag:blogger.com,1999:blog-4595779483513843486</id><updated>2011-08-02T19:33:26.750-07:00</updated><title type='text'>Coding, Working and the Sport of Lawn</title><subtitle type='html'></subtitle><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://c-sharp1.blogspot.com/feeds/posts/default'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4595779483513843486/posts/default?max-results=100'/><link rel='alternate' type='text/html' href='http://c-sharp1.blogspot.com/'/><link rel='hub' href='http://pubsubhubbub.appspot.com/'/><author><name>Joe Feser</name><uri>http://www.blogger.com/profile/12193240301552379640</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><generator version='7.00' uri='http://www.blogger.com'>Blogger</generator><openSearch:totalResults>2</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>100</openSearch:itemsPerPage><entry><id>tag:blogger.com,1999:blog-4595779483513843486.post-5423541643588545285</id><published>2011-04-22T15:02:00.001-07:00</published><updated>2011-04-22T15:04:06.511-07:00</updated><title type='text'>I have moved all of my blogs to Posterous</title><content type='html'>All of my blogs have been consolidated into one. You can now find me at &lt;a href="http://joefeser.posterous.com/"&gt;http://joefeser.posterous.com&lt;/a&gt;.&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;See you there.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Joe Feser&lt;/div&gt;&lt;div&gt;&lt;a href="http://www.twitter.com/joefeser"&gt;@joefeser&lt;/a&gt; on Twitter&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4595779483513843486-5423541643588545285?l=c-sharp1.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://c-sharp1.blogspot.com/feeds/5423541643588545285/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=4595779483513843486&amp;postID=5423541643588545285' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4595779483513843486/posts/default/5423541643588545285'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4595779483513843486/posts/default/5423541643588545285'/><link rel='alternate' type='text/html' href='http://c-sharp1.blogspot.com/2011/04/i-have-moved-all-of-my-blogs-to.html' title='I have moved all of my blogs to Posterous'/><author><name>Joe Feser</name><uri>http://www.blogger.com/profile/12193240301552379640</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4595779483513843486.post-3001919821415733812</id><published>2007-04-01T12:49:00.000-07:00</published><updated>2011-04-22T15:00:59.152-07:00</updated><title type='text'>Using Config Sections with Google Checkout</title><content type='html'>&lt;div&gt;**Note, this blog entry is now located &lt;a href="http://joefeser.posterous.com/2007/04/using-config-sections-with-google.html"&gt;here&lt;/a&gt;**&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;Up until now, a common issue with the .NET implementation of Google Checkout was forgetting to change the MerchantID and MerchantKey while changing environments. Many requests were made to allow merchants to have both the Sandbox and Productions configuration data in the config file. Adding additional appSettings keys was one posible solution, along with creating a configuration section.&lt;br /&gt;&lt;br /&gt;Today I just finished adding Google Checkout configuration section support to the open source code available at &lt;a href="http://code.google.com/p/google-checkout-dotnet-sample-code/source"&gt;http://code.google.com/p/google-checkout-dotnet-sample-code/source&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;The config section was designed to handle all of the current keys, performs the required validation against those keys and enables us to place all the config setting logic into one helper class.&lt;br /&gt;&lt;br /&gt;Below is a sample of the config section for the new GCheckoutConfigurationHandler. Every property in the GCheckoutConfigSection class is represented as an attribute on the GoogleCheckout node.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://4.bp.blogspot.com/_OPGFOgBVlTw/RhARC5RyAPI/AAAAAAAAAAM/1DtK4j1d82M/s1600-h/NewConfigSection.gif"&gt;&lt;img id="BLOGGER_PHOTO_ID_5048553923715137778" style="CURSOR: hand" alt="" src="http://4.bp.blogspot.com/_OPGFOgBVlTw/RhARC5RyAPI/AAAAAAAAAAM/1DtK4j1d82M/s400/NewConfigSection.gif" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;One of the benifits of using a common helper classes for configuration data is the ability to return context sensitive results based on the Environment. When the Environment is set to Sandbox, the SandboxMerchantID is returned with the MerchantID property is called. Once the Environment is set to Production, the ProductionMerchantID is returned for the same MerchantID property. No longer will you need to write conditional code based on the Environment.&lt;br /&gt;&lt;br /&gt;&lt;a href="http://3.bp.blogspot.com/_OPGFOgBVlTw/RhARtpRyARI/AAAAAAAAAAc/mWczLbgj4ZY/s1600-h/NewConfigTraceSample.gif"&gt;&lt;img id="BLOGGER_PHOTO_ID_5048554658154545426" style="CURSOR: hand" alt="" src="http://3.bp.blogspot.com/_OPGFOgBVlTw/RhARtpRyARI/AAAAAAAAAAc/mWczLbgj4ZY/s400/NewConfigTraceSample.gif" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Over the next few weeks we will be adding overloaded methods to the project to simplify the calling of constructors and methods requiring the MerchantID, MerchantKey, and Environment.&lt;br /&gt;&lt;br /&gt;The new Config section will allow us to simplify the class below by only requiring the OrderID, and MerchantOrderNo.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://3.bp.blogspot.com/_OPGFOgBVlTw/RhAX-pRyATI/AAAAAAAAAAs/TYS4DBQMY_0/s1600-h/AddMerchantOrderNumberReque.gif"&gt;&lt;img id="BLOGGER_PHOTO_ID_5048561547282088242" style="CURSOR: hand" alt="" src="http://3.bp.blogspot.com/_OPGFOgBVlTw/RhAX-pRyATI/AAAAAAAAAAs/TYS4DBQMY_0/s400/AddMerchantOrderNumberReque.gif" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;If you have any questions or ideas on how to improve the project, feel free to post to the group located at &lt;a href="http://groups.google.com/group/google-checkout-api-dotnet/topics"&gt;http://groups.google.com/group/google-checkout-api-dotnet/topics&lt;/a&gt;.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4595779483513843486-3001919821415733812?l=c-sharp1.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://c-sharp1.blogspot.com/feeds/3001919821415733812/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=4595779483513843486&amp;postID=3001919821415733812' title='3 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4595779483513843486/posts/default/3001919821415733812'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4595779483513843486/posts/default/3001919821415733812'/><link rel='alternate' type='text/html' href='http://c-sharp1.blogspot.com/2007/04/using-config-sections-with-google.html' title='Using Config Sections with Google Checkout'/><author><name>Joe Feser</name><uri>http://www.blogger.com/profile/12193240301552379640</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/_OPGFOgBVlTw/RhARC5RyAPI/AAAAAAAAAAM/1DtK4j1d82M/s72-c/NewConfigSection.gif' height='72' width='72'/><thr:total>3</thr:total></entry></feed>
