{"id":127,"date":"2011-09-19T12:54:00","date_gmt":"2011-09-19T12:54:00","guid":{"rendered":"http:\/\/madprogrammer76.wordpress.com\/2011\/03\/16\/shortcut-to-creating-properties-in-c-sharp"},"modified":"2011-09-19T12:54:00","modified_gmt":"2011-09-19T12:54:00","slug":"shortcut-to-creating-properties-in-c-sharp","status":"publish","type":"post","link":"http:\/\/andrewpallant.ca\/wordpress\/shortcut-to-creating-properties-in-c-sharp\/","title":{"rendered":"Shortcut To Creating Properties in C-Sharp"},"content":{"rendered":"<p>I was looking for an easy and consistent way of creating properties for classes. \u00a0I sometimes find that it can be a long drawn out process creating 5 to 100 properties for database classes. \u00a0Here is a quick example of what I did.<br \/>\nYou will need the following references to make this example work.<\/p>\n<ol style=\"font-family:inherit;\">\n<li>System.Diagnostics;<\/li>\n<li>System.Reflection;<\/li>\n<li>System.Collections;<\/li>\n<\/ol>\n<pre style=\"background-color:#ffffcc;font-size:.9em;border:dashed 1px silver;width:550px;\">public class ErrorLogRecord\n{\n     Hashtable _hsh = new Hashtable();\n     public DateTime DateOfOccurance\n     {\n          get { return (DateTime?)_hsh[GetName()] ?? DateTime.Now; }\n          set { _hsh[GetName()] = value; }\n     }       \u00a0\n     public String ErrorText\n     {\n          get { return (String)_hsh[GetName()]; }\n          set { _hsh[GetName()] = value; }\n     }\n\n     public String GetName()\n     {\n          StackTrace stackTrace = new StackTrace();\n          StackFrame stackFrame = stackTrace.GetFrame(1);\n          MethodBase methodBase = stackFrame.GetMethod();\n          return methodBase.Name.Replace(\"set_\", \"\").Replace(\"get_\", \"\");       \u00a0\n     }\n}<\/pre>\n<p>While this method is probably not perfect and could be argued there is a better way, this seems to satisfy the need. I would welcome alternatives.<\/p>\n<p><strong>Alternate Reading: <\/strong><a href=\"http:\/\/unlatched.com\/blog_Shortcut_To_Creating_Properties_in_C-Sharp_%E2%80%93_Revisited.aspx\">Shortcut To Creating Properties in C-Sharp (revisited)<\/a><\/p>\n","protected":false},"excerpt":{"rendered":"<p>I was looking for an easy and consistent way of creating properties for classes. \u00a0I sometimes find that it can be a long drawn out process creating 5 to 100 properties for database classes. \u00a0Here is a quick example of what I did. You will need the following references to make this example work. System.Diagnostics; &hellip; <a href=\"http:\/\/andrewpallant.ca\/wordpress\/shortcut-to-creating-properties-in-c-sharp\/\" class=\"more-link\">Continue reading <span class=\"screen-reader-text\">Shortcut To Creating Properties in C-Sharp<\/span><\/a><\/p>\n","protected":false},"author":2,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[8,13,67],"tags":[],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v23.9 - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\r\n<title>Shortcut To Creating Properties in C-Sharp - LDNDeveloper<\/title>\r\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\r\n<link rel=\"canonical\" href=\"http:\/\/andrewpallant.ca\/wordpress\/shortcut-to-creating-properties-in-c-sharp\/\" \/>\r\n<meta property=\"og:locale\" content=\"en_US\" \/>\r\n<meta property=\"og:type\" content=\"article\" \/>\r\n<meta property=\"og:title\" content=\"Shortcut To Creating Properties in C-Sharp - LDNDeveloper\" \/>\r\n<meta property=\"og:description\" content=\"I was looking for an easy and consistent way of creating properties for classes. \u00a0I sometimes find that it can be a long drawn out process creating 5 to 100 properties for database classes. \u00a0Here is a quick example of what I did. You will need the following references to make this example work. System.Diagnostics; &hellip; Continue reading Shortcut To Creating Properties in C-Sharp\" \/>\r\n<meta property=\"og:url\" content=\"http:\/\/andrewpallant.ca\/wordpress\/shortcut-to-creating-properties-in-c-sharp\/\" \/>\r\n<meta property=\"og:site_name\" content=\"LDNDeveloper\" \/>\r\n<meta property=\"article:published_time\" content=\"2011-09-19T12:54:00+00:00\" \/>\r\n<meta name=\"author\" content=\"andrewpallant\" \/>\r\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\r\n<meta name=\"twitter:creator\" content=\"@ldnDeveloper\" \/>\r\n<meta name=\"twitter:site\" content=\"@LdnDeveloper\" \/>\r\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"andrewpallant\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"1 minute\" \/>\r\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"http:\/\/andrewpallant.ca\/wordpress\/shortcut-to-creating-properties-in-c-sharp\/#article\",\"isPartOf\":{\"@id\":\"http:\/\/andrewpallant.ca\/wordpress\/shortcut-to-creating-properties-in-c-sharp\/\"},\"author\":{\"name\":\"andrewpallant\",\"@id\":\"http:\/\/andrewpallant.ca\/wordpress\/#\/schema\/person\/0e7b5e71751000e8f66b17b69ef4ab97\"},\"headline\":\"Shortcut To Creating Properties in C-Sharp\",\"datePublished\":\"2011-09-19T12:54:00+00:00\",\"dateModified\":\"2011-09-19T12:54:00+00:00\",\"mainEntityOfPage\":{\"@id\":\"http:\/\/andrewpallant.ca\/wordpress\/shortcut-to-creating-properties-in-c-sharp\/\"},\"wordCount\":99,\"commentCount\":0,\"publisher\":{\"@id\":\"http:\/\/andrewpallant.ca\/wordpress\/#\/schema\/person\/f6f5bb1ac3e0c5a54a8b5ce35fd67b84\"},\"articleSection\":[\"Better Coding\",\"C#\",\"Properties\"],\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"http:\/\/andrewpallant.ca\/wordpress\/shortcut-to-creating-properties-in-c-sharp\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"http:\/\/andrewpallant.ca\/wordpress\/shortcut-to-creating-properties-in-c-sharp\/\",\"url\":\"http:\/\/andrewpallant.ca\/wordpress\/shortcut-to-creating-properties-in-c-sharp\/\",\"name\":\"Shortcut To Creating Properties in C-Sharp - LDNDeveloper\",\"isPartOf\":{\"@id\":\"http:\/\/andrewpallant.ca\/wordpress\/#website\"},\"datePublished\":\"2011-09-19T12:54:00+00:00\",\"dateModified\":\"2011-09-19T12:54:00+00:00\",\"breadcrumb\":{\"@id\":\"http:\/\/andrewpallant.ca\/wordpress\/shortcut-to-creating-properties-in-c-sharp\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"http:\/\/andrewpallant.ca\/wordpress\/shortcut-to-creating-properties-in-c-sharp\/\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"http:\/\/andrewpallant.ca\/wordpress\/shortcut-to-creating-properties-in-c-sharp\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"http:\/\/andrewpallant.ca\/wordpress\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Shortcut To Creating Properties in C-Sharp\"}]},{\"@type\":\"WebSite\",\"@id\":\"http:\/\/andrewpallant.ca\/wordpress\/#website\",\"url\":\"http:\/\/andrewpallant.ca\/wordpress\/\",\"name\":\"LDNDeveloper\",\"description\":\"Learning, Growing and Sharing.\",\"publisher\":{\"@id\":\"http:\/\/andrewpallant.ca\/wordpress\/#\/schema\/person\/f6f5bb1ac3e0c5a54a8b5ce35fd67b84\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"http:\/\/andrewpallant.ca\/wordpress\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":[\"Person\",\"Organization\"],\"@id\":\"http:\/\/andrewpallant.ca\/wordpress\/#\/schema\/person\/f6f5bb1ac3e0c5a54a8b5ce35fd67b84\",\"name\":\"ldnDeveloper\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"http:\/\/andrewpallant.ca\/wordpress\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/andrewpallant.ca\/wordpress\/wp-content\/uploads\/2017\/05\/cropped-AAEAAQAAAAAAAAXQAAAAJDQxMGRlMzFjLWM4ODctNDk1NC05M2EyLWE1NDNhNTRiZjVlYw-2.jpg\",\"contentUrl\":\"https:\/\/andrewpallant.ca\/wordpress\/wp-content\/uploads\/2017\/05\/cropped-AAEAAQAAAAAAAAXQAAAAJDQxMGRlMzFjLWM4ODctNDk1NC05M2EyLWE1NDNhNTRiZjVlYw-2.jpg\",\"width\":512,\"height\":512,\"caption\":\"ldnDeveloper\"},\"logo\":{\"@id\":\"http:\/\/andrewpallant.ca\/wordpress\/#\/schema\/person\/image\/\"},\"description\":\"Andrew Pallant (@LdnDeveloper) has been a web, database and desktop developer for over 16 years. Andrew has worked on projects that ranged from factory automation to writing business applications. Most recently he has been heavily involved in various forms for ecommerce projects. Over the years Andrew has worn many hats: Project Manager, IT Manager, Lead Developer, Supervisor of Developers and many more - See more at: http:\/\/www.unlatched.com\/#sthash.8DiTkpKy.dpuf\",\"sameAs\":[\"http:\/\/www.andrewpallant.ca\",\"https:\/\/x.com\/LdnDeveloper\"]},{\"@type\":\"Person\",\"@id\":\"http:\/\/andrewpallant.ca\/wordpress\/#\/schema\/person\/0e7b5e71751000e8f66b17b69ef4ab97\",\"name\":\"andrewpallant\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"http:\/\/andrewpallant.ca\/wordpress\/#\/schema\/person\/image\/\",\"url\":\"http:\/\/2.gravatar.com\/avatar\/?s=96&d=mm&r=g\",\"contentUrl\":\"http:\/\/2.gravatar.com\/avatar\/?s=96&d=mm&r=g\",\"caption\":\"andrewpallant\"},\"url\":\"http:\/\/andrewpallant.ca\/wordpress\/author\/andrewpallant\/\"}]}<\/script>\r\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Shortcut To Creating Properties in C-Sharp - LDNDeveloper","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"http:\/\/andrewpallant.ca\/wordpress\/shortcut-to-creating-properties-in-c-sharp\/","og_locale":"en_US","og_type":"article","og_title":"Shortcut To Creating Properties in C-Sharp - LDNDeveloper","og_description":"I was looking for an easy and consistent way of creating properties for classes. \u00a0I sometimes find that it can be a long drawn out process creating 5 to 100 properties for database classes. \u00a0Here is a quick example of what I did. You will need the following references to make this example work. System.Diagnostics; &hellip; Continue reading Shortcut To Creating Properties in C-Sharp","og_url":"http:\/\/andrewpallant.ca\/wordpress\/shortcut-to-creating-properties-in-c-sharp\/","og_site_name":"LDNDeveloper","article_published_time":"2011-09-19T12:54:00+00:00","author":"andrewpallant","twitter_card":"summary_large_image","twitter_creator":"@ldnDeveloper","twitter_site":"@LdnDeveloper","twitter_misc":{"Written by":"andrewpallant","Est. reading time":"1 minute"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"http:\/\/andrewpallant.ca\/wordpress\/shortcut-to-creating-properties-in-c-sharp\/#article","isPartOf":{"@id":"http:\/\/andrewpallant.ca\/wordpress\/shortcut-to-creating-properties-in-c-sharp\/"},"author":{"name":"andrewpallant","@id":"http:\/\/andrewpallant.ca\/wordpress\/#\/schema\/person\/0e7b5e71751000e8f66b17b69ef4ab97"},"headline":"Shortcut To Creating Properties in C-Sharp","datePublished":"2011-09-19T12:54:00+00:00","dateModified":"2011-09-19T12:54:00+00:00","mainEntityOfPage":{"@id":"http:\/\/andrewpallant.ca\/wordpress\/shortcut-to-creating-properties-in-c-sharp\/"},"wordCount":99,"commentCount":0,"publisher":{"@id":"http:\/\/andrewpallant.ca\/wordpress\/#\/schema\/person\/f6f5bb1ac3e0c5a54a8b5ce35fd67b84"},"articleSection":["Better Coding","C#","Properties"],"inLanguage":"en-US","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["http:\/\/andrewpallant.ca\/wordpress\/shortcut-to-creating-properties-in-c-sharp\/#respond"]}]},{"@type":"WebPage","@id":"http:\/\/andrewpallant.ca\/wordpress\/shortcut-to-creating-properties-in-c-sharp\/","url":"http:\/\/andrewpallant.ca\/wordpress\/shortcut-to-creating-properties-in-c-sharp\/","name":"Shortcut To Creating Properties in C-Sharp - LDNDeveloper","isPartOf":{"@id":"http:\/\/andrewpallant.ca\/wordpress\/#website"},"datePublished":"2011-09-19T12:54:00+00:00","dateModified":"2011-09-19T12:54:00+00:00","breadcrumb":{"@id":"http:\/\/andrewpallant.ca\/wordpress\/shortcut-to-creating-properties-in-c-sharp\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["http:\/\/andrewpallant.ca\/wordpress\/shortcut-to-creating-properties-in-c-sharp\/"]}]},{"@type":"BreadcrumbList","@id":"http:\/\/andrewpallant.ca\/wordpress\/shortcut-to-creating-properties-in-c-sharp\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"http:\/\/andrewpallant.ca\/wordpress\/"},{"@type":"ListItem","position":2,"name":"Shortcut To Creating Properties in C-Sharp"}]},{"@type":"WebSite","@id":"http:\/\/andrewpallant.ca\/wordpress\/#website","url":"http:\/\/andrewpallant.ca\/wordpress\/","name":"LDNDeveloper","description":"Learning, Growing and Sharing.","publisher":{"@id":"http:\/\/andrewpallant.ca\/wordpress\/#\/schema\/person\/f6f5bb1ac3e0c5a54a8b5ce35fd67b84"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"http:\/\/andrewpallant.ca\/wordpress\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":["Person","Organization"],"@id":"http:\/\/andrewpallant.ca\/wordpress\/#\/schema\/person\/f6f5bb1ac3e0c5a54a8b5ce35fd67b84","name":"ldnDeveloper","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"http:\/\/andrewpallant.ca\/wordpress\/#\/schema\/person\/image\/","url":"https:\/\/andrewpallant.ca\/wordpress\/wp-content\/uploads\/2017\/05\/cropped-AAEAAQAAAAAAAAXQAAAAJDQxMGRlMzFjLWM4ODctNDk1NC05M2EyLWE1NDNhNTRiZjVlYw-2.jpg","contentUrl":"https:\/\/andrewpallant.ca\/wordpress\/wp-content\/uploads\/2017\/05\/cropped-AAEAAQAAAAAAAAXQAAAAJDQxMGRlMzFjLWM4ODctNDk1NC05M2EyLWE1NDNhNTRiZjVlYw-2.jpg","width":512,"height":512,"caption":"ldnDeveloper"},"logo":{"@id":"http:\/\/andrewpallant.ca\/wordpress\/#\/schema\/person\/image\/"},"description":"Andrew Pallant (@LdnDeveloper) has been a web, database and desktop developer for over 16 years. Andrew has worked on projects that ranged from factory automation to writing business applications. Most recently he has been heavily involved in various forms for ecommerce projects. Over the years Andrew has worn many hats: Project Manager, IT Manager, Lead Developer, Supervisor of Developers and many more - See more at: http:\/\/www.unlatched.com\/#sthash.8DiTkpKy.dpuf","sameAs":["http:\/\/www.andrewpallant.ca","https:\/\/x.com\/LdnDeveloper"]},{"@type":"Person","@id":"http:\/\/andrewpallant.ca\/wordpress\/#\/schema\/person\/0e7b5e71751000e8f66b17b69ef4ab97","name":"andrewpallant","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"http:\/\/andrewpallant.ca\/wordpress\/#\/schema\/person\/image\/","url":"http:\/\/2.gravatar.com\/avatar\/?s=96&d=mm&r=g","contentUrl":"http:\/\/2.gravatar.com\/avatar\/?s=96&d=mm&r=g","caption":"andrewpallant"},"url":"http:\/\/andrewpallant.ca\/wordpress\/author\/andrewpallant\/"}]}},"_links":{"self":[{"href":"http:\/\/andrewpallant.ca\/wordpress\/wp-json\/wp\/v2\/posts\/127"}],"collection":[{"href":"http:\/\/andrewpallant.ca\/wordpress\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"http:\/\/andrewpallant.ca\/wordpress\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"http:\/\/andrewpallant.ca\/wordpress\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"http:\/\/andrewpallant.ca\/wordpress\/wp-json\/wp\/v2\/comments?post=127"}],"version-history":[{"count":0,"href":"http:\/\/andrewpallant.ca\/wordpress\/wp-json\/wp\/v2\/posts\/127\/revisions"}],"wp:attachment":[{"href":"http:\/\/andrewpallant.ca\/wordpress\/wp-json\/wp\/v2\/media?parent=127"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"http:\/\/andrewpallant.ca\/wordpress\/wp-json\/wp\/v2\/categories?post=127"},{"taxonomy":"post_tag","embeddable":true,"href":"http:\/\/andrewpallant.ca\/wordpress\/wp-json\/wp\/v2\/tags?post=127"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}