<?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:blogger='http://schemas.google.com/blogger/2008' 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-5628236597237771110</id><updated>2023-07-12T00:37:07.930+01:00</updated><category term="Revit"/><category term="Android"/><category term="javascript"/><category term="xamarin"/><category term="Rails"/><category term="iOS"/><category term="Phonegap"/><category term="cordova"/><category term="iPhone"/><category term="asp.NET"/><category term="SharePoint"/><category term="Visual Studio"/><category term=".net"/><category term="Ruby"/><category term="Xcode"/><category term="c#.net"/><category term="css"/><category term="mobile"/><category term="IIS"/><category term="SQL"/><category term="SQL Server"/><category term="ajax"/><category term="jQuery Mobile"/><category term="MVC"/><category term="jQuery"/><category term="URL rewriting"/><category term="c#"/><category term="tools"/><category term="64-bit"/><category term="Git"/><category term="IE"/><category term="Mac"/><category term="seo"/><category term="App Store"/><category term="Entity Framework"/><category term="Stored procedures"/><category term="Umbraco"/><category term="debugging"/><category term="developer tools"/><category term="push notifications"/><category term="safari"/><category term="sessions"/><category term="windows"/><category term="Devise"/><category term="Eclipse"/><category term="JSON"/><category term="LINQ"/><category term="Microsoft Jet Engine"/><category term="Windows Mobile"/><category term="Windows Phone"/><category term="XML"/><category term="bugs"/><category term="examine"/><category term="facebook"/><category term="file handling"/><category term="friendly URLs"/><category term="html"/><category term="https"/><category term="lucene"/><category term="ssl"/><category term="swift"/><category term="vanity URLs"/><category term="Add-In Manager"/><category term="DX"/><category term="EpiServer"/><category term="ExactTarget"/><category term="GridView"/><category term="IDE"/><category term="Microsoft Access"/><category term="Postgres"/><category term="Razor"/><category term="Rubymine"/><category term="SMTP"/><category term="SPMetal"/><category term="SQL Server Compact"/><category term="SharpZipLib"/><category term="Spree"/><category term="Twitter Bootstrap"/><category term="activerecord"/><category term="adestra"/><category term="analytics"/><category term="config"/><category term="console"/><category term="cookies"/><category term="directories"/><category term="dns problems"/><category term="events"/><category term="google"/><category term="installation"/><category term="leaflet"/><category term="membership"/><category term="messagefocus"/><category term="multi-threading"/><category term="push"/><category term="scrolling"/><category term="software"/><category term="sourcetree"/><category term="stylesheet"/><category term="textnote"/><category term="tracking"/><category term="validation"/><category term="web api"/><category term="web.config"/><category term="webview"/><category term="zip"/><category term="APNS"/><category term="Add-Ins"/><category term="Adobe"/><category term="Amazon AWS"/><category term="AppDomain"/><category term="Apple"/><category term="BackgroundWorker"/><category term="Bitbucket"/><category term="BoundingBox"/><category term="CKEditor"/><category term="CPC"/><category term="Certificates"/><category term="Charles"/><category term="Crystal Reports"/><category term="DisplayUnitSystem"/><category term="DoEvents()"/><category term="ElementSetIterator"/><category term="Error 404"/><category term="FCN"/><category term="File Change Notification"/><category term="Flurry"/><category term="GCM"/><category term="Global.asax"/><category term="Gov.uk"/><category term="Guid"/><category term="Heroku"/><category term="HtmlTitle"/><category term="LAMP"/><category term="Mac OSX"/><category term="Microsoft"/><category term="Newtonsoft"/><category term="Norton Ghost"/><category term="P3P"/><category term="PPC"/><category term="RawUrl"/><category term="RvtMgdDbg"/><category term="S3"/><category term="SIFR"/><category term="SQLite"/><category term="Sendgrid"/><category term="SetCacheability"/><category term="Skydrive"/><category term="Source control"/><category term="Status codes"/><category term="TestFlight"/><category term="Trade marks"/><category term="Twilio"/><category term="UDID"/><category term="UITableView"/><category term="VS2017"/><category term="Virgin Media"/><category term="WP8"/><category term="accuracy"/><category term="affiliates"/><category term="agile"/><category term="anchors"/><category term="array"/><category term="asp"/><category term="automapper"/><category term="bandwidth"/><category term="blogger"/><category term="broadband"/><category term="build events"/><category term="caching"/><category term="canonical tags"/><category term="category filter"/><category term="chrome"/><category term="collections"/><category term="command line arguments"/><category term="components"/><category term="copy"/><category term="cross browser"/><category term="culture"/><category term="currency"/><category term="data attributes"/><category term="datapager"/><category term="datepicker"/><category term="datetime"/><category term="dell laptop"/><category term="dell support"/><category term="dependency walker"/><category term="dictionaries"/><category term="dns"/><category term="ecplise"/><category term="elmah"/><category term="email"/><category term="error capturing"/><category term="family types"/><category term="file associations"/><category term="file opening"/><category term="file uploading"/><category term="file versions"/><category term="filters"/><category term="fixture"/><category term="font"/><category term="foreign key"/><category term="format"/><category term="geometry"/><category term="github"/><category term="grammar"/><category term="headspace"/><category term="hosting"/><category term="i18n"/><category term="iOS7"/><category term="iframes"/><category term="imagemagick"/><category term="installer"/><category term="instance.name"/><category term="java"/><category term="journal file"/><category term="lambda queries"/><category term="language"/><category term="leader"/><category term="lists"/><category term="listview"/><category term="localization"/><category term="lollipop"/><category term="mapping"/><category term="maths"/><category term="menu"/><category term="migrations"/><category term="modal forms"/><category term="msi"/><category term="network"/><category term="node.js"/><category term="nuget"/><category term="openstreetmap"/><category term="page directive"/><category term="pagination"/><category term="parameters"/><category term="phishing"/><category term="plugins"/><category term="powershell"/><category term="preprocessor directives"/><category term="privacy"/><category term="proxy"/><category term="random"/><category term="recruitment"/><category term="regedit"/><category term="regex"/><category term="repeaters"/><category term="responsive design"/><category term="restart"/><category term="ribbons"/><category term="scam"/><category term="schedules"/><category term="selected elements"/><category term="selection set"/><category term="setup"/><category term="signalR"/><category term="sitemap"/><category term="speed"/><category term="standards"/><category term="strings"/><category term="suo file"/><category term="support"/><category term="svn"/><category term="tab control"/><category term="table owner"/><category term="tablet"/><category term="title tags"/><category term="toolbar"/><category term="touch keyboard"/><category term="type name"/><category term="unhandled exceptions"/><category term="unit testing"/><category term="units"/><category term="updatepanel"/><category term="users"/><category term="validation groups"/><category term="versioning"/><category term="views"/><category term="web user control"/><category term="webforms"/><category term="windows 10"/><category term="winforms"/><title type='text'>Another programming blog</title><subtitle type='html'>C#, .Net, MVC, jQuery, JavaScript, HTML, CSS, Umbraco, Phonegap / Cordova, Xamarin, iPhone, iOS, Swift, Android, Windows, apps, websites, Full Stack, ecommerce, Facebook, responsive, front-end. Freelance developer, programmer for web and mobile in Bristol, UK.</subtitle><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://dot-net-web-developer-bristol.blogspot.com/feeds/posts/default'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5628236597237771110/posts/default?redirect=false'/><link rel='alternate' type='text/html' href='http://dot-net-web-developer-bristol.blogspot.com/'/><link rel='hub' href='http://pubsubhubbub.appspot.com/'/><link rel='next' type='application/atom+xml' href='http://www.blogger.com/feeds/5628236597237771110/posts/default?start-index=26&amp;max-results=25&amp;redirect=false'/><author><name>Ed</name><uri>http://www.blogger.com/profile/14414564657776968282</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='28' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhA7NO6y2cDcPNSwBrHnArGVwkCFeMb3AbeETwLQi872gDC9Q6jGbZGrbHtAcZ0vqSIEL-PlVd71XviTbUTdmoqrhevQ5V9Mp9YbtL9aCa-kFdd6LQpJKUT3toTPIsnJA/s220/AtTheFarm.jpg'/></author><generator version='7.00' uri='http://www.blogger.com'>Blogger</generator><openSearch:totalResults>316</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>25</openSearch:itemsPerPage><entry><id>tag:blogger.com,1999:blog-5628236597237771110.post-7625091576167730577</id><published>2021-12-09T10:53:00.000+00:00</published><updated>2021-12-09T10:53:28.116+00:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="file versions"/><category scheme="http://www.blogger.com/atom/ns#" term="powershell"/><title type='text'>Using powershell to look for files and versions</title><content type='html'>&lt;p&gt;&amp;nbsp;Yesterday I had a runtime problem which required me to find a file with a particular version because it wasn&#39;t clear where or how this error was being produced. I used powershell to find files of name x and list their versions.&lt;br /&gt;&lt;br /&gt;&lt;/p&gt;&lt;blockquote&gt;Get-Childitem C:\Projects -Include system.linq.dll -Recurse | Foreach-Object { &quot;{0}`t{1}&quot; -f $_.FullName&amp;nbsp; &amp;nbsp;[System.Diagnostics.FileVersionInfo]::GetVersionInfo($_).FileVersion }&lt;/blockquote&gt;&lt;p&gt;&lt;/p&gt;</content><link rel='replies' type='application/atom+xml' href='http://dot-net-web-developer-bristol.blogspot.com/feeds/7625091576167730577/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://dot-net-web-developer-bristol.blogspot.com/2021/12/using-powershell-to-look-for-files-and.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5628236597237771110/posts/default/7625091576167730577'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5628236597237771110/posts/default/7625091576167730577'/><link rel='alternate' type='text/html' href='http://dot-net-web-developer-bristol.blogspot.com/2021/12/using-powershell-to-look-for-files-and.html' title='Using powershell to look for files and versions'/><author><name>Ed</name><uri>http://www.blogger.com/profile/14414564657776968282</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='28' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhA7NO6y2cDcPNSwBrHnArGVwkCFeMb3AbeETwLQi872gDC9Q6jGbZGrbHtAcZ0vqSIEL-PlVd71XviTbUTdmoqrhevQ5V9Mp9YbtL9aCa-kFdd6LQpJKUT3toTPIsnJA/s220/AtTheFarm.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5628236597237771110.post-7383910909664123855</id><published>2021-09-15T14:20:00.004+01:00</published><updated>2021-09-15T14:21:05.265+01:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="Git"/><title type='text'>Accidental stash delete?</title><content type='html'>&lt;div&gt;If you&#39;ve accidentally deleted a stash then worry not, you can recover it like this (thanks to my colleague Matt for this tip):&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;ul style=&quot;text-align: left;&quot;&gt;&lt;li&gt;Run this in Git Bash terminal&lt;br /&gt;&lt;br /&gt;&lt;blockquote&gt;git fsck --unreachable | grep commit | cut -d &#39; &#39; -f3 | xargs git log --merges --no-walk&lt;/blockquote&gt;&lt;br /&gt;&lt;br /&gt;It&#39;ll return a list of deleted stashes, ordered by date.&lt;br /&gt;&lt;br /&gt;&lt;/li&gt;&lt;li&gt;Find the commit hash in the response and then update the commit hash in the below cmd and run it&lt;br /&gt;&lt;br /&gt;&lt;blockquote&gt;git update-ref refs/stash 4b3fc45c94caadcc87d783064624585c194f4be8 -m &quot;My recovered stash&quot;&lt;/blockquote&gt;&lt;br /&gt;&lt;br /&gt;&lt;/li&gt;&lt;li&gt;Refresh your git client (sourcetree/gitkraken) and it should now be listed again under &#39;Stashes&#39;!&lt;/li&gt;&lt;/ul&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://dot-net-web-developer-bristol.blogspot.com/feeds/7383910909664123855/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://dot-net-web-developer-bristol.blogspot.com/2021/09/accidental-stash-delete.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5628236597237771110/posts/default/7383910909664123855'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5628236597237771110/posts/default/7383910909664123855'/><link rel='alternate' type='text/html' href='http://dot-net-web-developer-bristol.blogspot.com/2021/09/accidental-stash-delete.html' title='Accidental stash delete?'/><author><name>Ed</name><uri>http://www.blogger.com/profile/14414564657776968282</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='28' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhA7NO6y2cDcPNSwBrHnArGVwkCFeMb3AbeETwLQi872gDC9Q6jGbZGrbHtAcZ0vqSIEL-PlVd71XviTbUTdmoqrhevQ5V9Mp9YbtL9aCa-kFdd6LQpJKUT3toTPIsnJA/s220/AtTheFarm.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5628236597237771110.post-8674333735193489384</id><published>2021-04-23T11:06:00.002+01:00</published><updated>2021-04-23T11:06:19.616+01:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="c#.net"/><category scheme="http://www.blogger.com/atom/ns#" term="Certificates"/><title type='text'>Select certificate from store by friendly name</title><content type='html'>&lt;script src=&quot;https://gist.github.com/whoshotjr/7df48ccc180d7c1971624d4e02f137f1.js&quot;&gt;&lt;/script&gt;</content><link rel='replies' type='application/atom+xml' href='http://dot-net-web-developer-bristol.blogspot.com/feeds/8674333735193489384/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://dot-net-web-developer-bristol.blogspot.com/2021/04/select-certificate-from-store-by.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5628236597237771110/posts/default/8674333735193489384'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5628236597237771110/posts/default/8674333735193489384'/><link rel='alternate' type='text/html' href='http://dot-net-web-developer-bristol.blogspot.com/2021/04/select-certificate-from-store-by.html' title='Select certificate from store by friendly name'/><author><name>Ed</name><uri>http://www.blogger.com/profile/14414564657776968282</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='28' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhA7NO6y2cDcPNSwBrHnArGVwkCFeMb3AbeETwLQi872gDC9Q6jGbZGrbHtAcZ0vqSIEL-PlVd71XviTbUTdmoqrhevQ5V9Mp9YbtL9aCa-kFdd6LQpJKUT3toTPIsnJA/s220/AtTheFarm.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5628236597237771110.post-8036709750268984250</id><published>2021-03-31T09:57:00.002+01:00</published><updated>2021-04-07T10:24:13.220+01:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="SQL"/><title type='text'>Insert list of strings into temp table</title><content type='html'>&lt;blockquote&gt;create table #tempListOfThings ( thing varchar(50) )&lt;br&gt;&lt;br&gt;INSERT INTO #tempListOfThings (thing) VALUES (&#39;val1&#39;), (&#39;val2&#39;), ...&lt;/blockquote&gt;</content><link rel='replies' type='application/atom+xml' href='http://dot-net-web-developer-bristol.blogspot.com/feeds/8036709750268984250/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://dot-net-web-developer-bristol.blogspot.com/2021/03/insert-list-of-strings-into-temp-table.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5628236597237771110/posts/default/8036709750268984250'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5628236597237771110/posts/default/8036709750268984250'/><link rel='alternate' type='text/html' href='http://dot-net-web-developer-bristol.blogspot.com/2021/03/insert-list-of-strings-into-temp-table.html' title='Insert list of strings into temp table'/><author><name>Ed</name><uri>http://www.blogger.com/profile/14414564657776968282</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='28' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhA7NO6y2cDcPNSwBrHnArGVwkCFeMb3AbeETwLQi872gDC9Q6jGbZGrbHtAcZ0vqSIEL-PlVd71XviTbUTdmoqrhevQ5V9Mp9YbtL9aCa-kFdd6LQpJKUT3toTPIsnJA/s220/AtTheFarm.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5628236597237771110.post-7173828101996697098</id><published>2021-03-24T08:09:00.001+00:00</published><updated>2021-03-24T08:09:39.888+00:00</updated><title type='text'>Sql where datetime = today</title><content type='html'>&lt;script src=&quot;https://gist.github.com/whoshotjr/dd4bec0ffe561f6acee684907c9de18d.js&quot;&gt;&lt;/script&gt;</content><link rel='replies' type='application/atom+xml' href='http://dot-net-web-developer-bristol.blogspot.com/feeds/7173828101996697098/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://dot-net-web-developer-bristol.blogspot.com/2021/03/sql-where-datetime-today.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5628236597237771110/posts/default/7173828101996697098'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5628236597237771110/posts/default/7173828101996697098'/><link rel='alternate' type='text/html' href='http://dot-net-web-developer-bristol.blogspot.com/2021/03/sql-where-datetime-today.html' title='Sql where datetime = today'/><author><name>Ed</name><uri>http://www.blogger.com/profile/14414564657776968282</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='28' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhA7NO6y2cDcPNSwBrHnArGVwkCFeMb3AbeETwLQi872gDC9Q6jGbZGrbHtAcZ0vqSIEL-PlVd71XviTbUTdmoqrhevQ5V9Mp9YbtL9aCa-kFdd6LQpJKUT3toTPIsnJA/s220/AtTheFarm.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5628236597237771110.post-6204855389071050389</id><published>2020-06-11T09:28:00.001+01:00</published><updated>2020-06-11T09:28:18.466+01:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="SQL"/><category scheme="http://www.blogger.com/atom/ns#" term="SQL Server"/><title type='text'>Decompress a compressed db field</title><content type='html'>&lt;br /&gt;
&lt;script src=&quot;https://gist.github.com/whoshotjr/4904e9db499a1e0ed310706e2dff5c28.js&quot;&gt;&lt;/script&gt;</content><link rel='replies' type='application/atom+xml' href='http://dot-net-web-developer-bristol.blogspot.com/feeds/6204855389071050389/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://dot-net-web-developer-bristol.blogspot.com/2020/06/decompress-compressed-db-field.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5628236597237771110/posts/default/6204855389071050389'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5628236597237771110/posts/default/6204855389071050389'/><link rel='alternate' type='text/html' href='http://dot-net-web-developer-bristol.blogspot.com/2020/06/decompress-compressed-db-field.html' title='Decompress a compressed db field'/><author><name>Ed</name><uri>http://www.blogger.com/profile/14414564657776968282</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='28' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhA7NO6y2cDcPNSwBrHnArGVwkCFeMb3AbeETwLQi872gDC9Q6jGbZGrbHtAcZ0vqSIEL-PlVd71XviTbUTdmoqrhevQ5V9Mp9YbtL9aCa-kFdd6LQpJKUT3toTPIsnJA/s220/AtTheFarm.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5628236597237771110.post-9015287705924713856</id><published>2020-01-21T12:15:00.000+00:00</published><updated>2020-01-21T12:15:00.260+00:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="windows"/><title type='text'>Deleting a windows service</title><content type='html'>There seems to be more than one way to do this, but is a nice easy one:&lt;br /&gt;
&lt;br /&gt;
&lt;i&gt;sc delete &quot;My Service&quot;&lt;/i&gt;&lt;br /&gt;
&lt;br /&gt;
</content><link rel='replies' type='application/atom+xml' href='http://dot-net-web-developer-bristol.blogspot.com/feeds/9015287705924713856/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://dot-net-web-developer-bristol.blogspot.com/2020/01/deleting-windows-service.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5628236597237771110/posts/default/9015287705924713856'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5628236597237771110/posts/default/9015287705924713856'/><link rel='alternate' type='text/html' href='http://dot-net-web-developer-bristol.blogspot.com/2020/01/deleting-windows-service.html' title='Deleting a windows service'/><author><name>Ed</name><uri>http://www.blogger.com/profile/14414564657776968282</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='28' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhA7NO6y2cDcPNSwBrHnArGVwkCFeMb3AbeETwLQi872gDC9Q6jGbZGrbHtAcZ0vqSIEL-PlVd71XviTbUTdmoqrhevQ5V9Mp9YbtL9aCa-kFdd6LQpJKUT3toTPIsnJA/s220/AtTheFarm.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5628236597237771110.post-6798565838024213460</id><published>2019-11-22T09:53:00.000+00:00</published><updated>2019-11-22T09:53:01.067+00:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="c#"/><category scheme="http://www.blogger.com/atom/ns#" term="file handling"/><category scheme="http://www.blogger.com/atom/ns#" term="versioning"/><title type='text'>Comparing file versions</title><content type='html'>Here&#39;s a good way of comparing file versions. I had to use this in a recent service installer.

&lt;script src=&quot;https://gist.github.com/whoshotjr/8ba1f6044a078544bcca8637193aaa3e.js&quot;&gt;&lt;/script&gt;</content><link rel='replies' type='application/atom+xml' href='http://dot-net-web-developer-bristol.blogspot.com/feeds/6798565838024213460/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://dot-net-web-developer-bristol.blogspot.com/2019/11/comparing-file-versions.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5628236597237771110/posts/default/6798565838024213460'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5628236597237771110/posts/default/6798565838024213460'/><link rel='alternate' type='text/html' href='http://dot-net-web-developer-bristol.blogspot.com/2019/11/comparing-file-versions.html' title='Comparing file versions'/><author><name>Ed</name><uri>http://www.blogger.com/profile/14414564657776968282</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='28' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhA7NO6y2cDcPNSwBrHnArGVwkCFeMb3AbeETwLQi872gDC9Q6jGbZGrbHtAcZ0vqSIEL-PlVd71XviTbUTdmoqrhevQ5V9Mp9YbtL9aCa-kFdd6LQpJKUT3toTPIsnJA/s220/AtTheFarm.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5628236597237771110.post-103825051288830865</id><published>2019-11-06T13:30:00.000+00:00</published><updated>2019-11-06T13:30:01.750+00:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="nuget"/><title type='text'>Re-install nuget packages</title><content type='html'>Here&#39;s how to reinstall nuget packages for your solution:
&lt;blockquote&gt;
Update-Package -reinstall&lt;/blockquote&gt;</content><link rel='replies' type='application/atom+xml' href='http://dot-net-web-developer-bristol.blogspot.com/feeds/103825051288830865/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://dot-net-web-developer-bristol.blogspot.com/2019/11/re-install-nuget-packages.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5628236597237771110/posts/default/103825051288830865'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5628236597237771110/posts/default/103825051288830865'/><link rel='alternate' type='text/html' href='http://dot-net-web-developer-bristol.blogspot.com/2019/11/re-install-nuget-packages.html' title='Re-install nuget packages'/><author><name>Ed</name><uri>http://www.blogger.com/profile/14414564657776968282</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='28' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhA7NO6y2cDcPNSwBrHnArGVwkCFeMb3AbeETwLQi872gDC9Q6jGbZGrbHtAcZ0vqSIEL-PlVd71XviTbUTdmoqrhevQ5V9Mp9YbtL9aCa-kFdd6LQpJKUT3toTPIsnJA/s220/AtTheFarm.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5628236597237771110.post-3028056017953044489</id><published>2019-10-30T06:49:00.002+00:00</published><updated>2019-10-30T06:49:39.589+00:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="console"/><title type='text'>Windows exe with optional console</title><content type='html'>Today I had to change the console app I&#39;d already built into something more silent, but a console was still required in some circumstances.&lt;br /&gt;
&lt;br /&gt;
All I had to do was switch the output type (Properties &amp;gt; Application) to &#39;Windows Application&#39; and add the following code:&lt;br /&gt;
&lt;br /&gt;
&lt;script src=&quot;https://gist.github.com/whoshotjr/603821c70e7a23f4f6fcf71ca6d0452d.js&quot;&gt;&lt;/script&gt;</content><link rel='replies' type='application/atom+xml' href='http://dot-net-web-developer-bristol.blogspot.com/feeds/3028056017953044489/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://dot-net-web-developer-bristol.blogspot.com/2019/10/windows-exe-with-optional-console.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5628236597237771110/posts/default/3028056017953044489'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5628236597237771110/posts/default/3028056017953044489'/><link rel='alternate' type='text/html' href='http://dot-net-web-developer-bristol.blogspot.com/2019/10/windows-exe-with-optional-console.html' title='Windows exe with optional console'/><author><name>Ed</name><uri>http://www.blogger.com/profile/14414564657776968282</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='28' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhA7NO6y2cDcPNSwBrHnArGVwkCFeMb3AbeETwLQi872gDC9Q6jGbZGrbHtAcZ0vqSIEL-PlVd71XviTbUTdmoqrhevQ5V9Mp9YbtL9aCa-kFdd6LQpJKUT3toTPIsnJA/s220/AtTheFarm.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5628236597237771110.post-3010719775318951637</id><published>2019-06-07T11:16:00.000+01:00</published><updated>2019-06-07T11:22:10.189+01:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="signalR"/><title type='text'>Configuring SignalR</title><content type='html'>Each host has access to an IConfigurationManager which allows you to tweak some default SignalR settings. Some things that can be tweaked are:&lt;br /&gt;
&lt;br /&gt;
&lt;ul&gt;
&lt;li&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;b&gt;ConnectionTimeout&lt;/b&gt; - Represents the amount of time to leave a connection open before timing out. Default is 110 seconds.&lt;/li&gt;
&lt;li&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;b&gt;DisconnectTimeout&lt;/b&gt; - Represents the amount of time to wait after a connection goes away before raising the disconnect event. Default is 30 seconds.&lt;/li&gt;
&lt;li&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;b&gt;KeepAlive&lt;/b&gt; - Representing the amount of time to wait before sending a keep alive packet over an idle connection. Set to null to disable keep alive. This is set to 30 seconds by default. When this is on, the ConnectionTimeout will have no effect.&lt;/li&gt;
&lt;/ul&gt;
&lt;script src=&quot;https://gist.github.com/whoshotjr/001e38f50ec07b0372b0e599dce32a8b.js&quot;&gt;&lt;/script&gt;</content><link rel='replies' type='application/atom+xml' href='http://dot-net-web-developer-bristol.blogspot.com/feeds/3010719775318951637/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://dot-net-web-developer-bristol.blogspot.com/2019/06/configuring-signalr.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5628236597237771110/posts/default/3010719775318951637'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5628236597237771110/posts/default/3010719775318951637'/><link rel='alternate' type='text/html' href='http://dot-net-web-developer-bristol.blogspot.com/2019/06/configuring-signalr.html' title='Configuring SignalR'/><author><name>Ed</name><uri>http://www.blogger.com/profile/14414564657776968282</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='28' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhA7NO6y2cDcPNSwBrHnArGVwkCFeMb3AbeETwLQi872gDC9Q6jGbZGrbHtAcZ0vqSIEL-PlVd71XviTbUTdmoqrhevQ5V9Mp9YbtL9aCa-kFdd6LQpJKUT3toTPIsnJA/s220/AtTheFarm.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5628236597237771110.post-1436752582905154460</id><published>2018-12-11T11:22:00.004+00:00</published><updated>2018-12-11T11:22:43.479+00:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="automapper"/><title type='text'>Automapper ignore properties</title><content type='html'>&lt;blockquote class=&quot;tr_bq&quot;&gt;
.ForAllOtherMembers(opt =&amp;gt; opt.Ignore());&lt;/blockquote&gt;
</content><link rel='replies' type='application/atom+xml' href='http://dot-net-web-developer-bristol.blogspot.com/feeds/1436752582905154460/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://dot-net-web-developer-bristol.blogspot.com/2018/12/automapper-ignore-properties.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5628236597237771110/posts/default/1436752582905154460'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5628236597237771110/posts/default/1436752582905154460'/><link rel='alternate' type='text/html' href='http://dot-net-web-developer-bristol.blogspot.com/2018/12/automapper-ignore-properties.html' title='Automapper ignore properties'/><author><name>Ed</name><uri>http://www.blogger.com/profile/14414564657776968282</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='28' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhA7NO6y2cDcPNSwBrHnArGVwkCFeMb3AbeETwLQi872gDC9Q6jGbZGrbHtAcZ0vqSIEL-PlVd71XviTbUTdmoqrhevQ5V9Mp9YbtL9aCa-kFdd6LQpJKUT3toTPIsnJA/s220/AtTheFarm.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5628236597237771110.post-2259817646374449276</id><published>2018-08-07T15:58:00.001+01:00</published><updated>2018-08-07T16:02:48.752+01:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="fixture"/><category scheme="http://www.blogger.com/atom/ns#" term="unit testing"/><title type='text'>Ignoring a property in Fixture</title><content type='html'>I&#39;ve been using Fixture for unit testing, and today I needed to ignore a property in a model. This is how its done:&lt;br /&gt;
&lt;br /&gt;
&lt;script src=&quot;https://gist.github.com/whoshotjr/febac25ee2e659c67468af3f72bd7c3a.js&quot;&gt;&lt;/script&gt;</content><link rel='replies' type='application/atom+xml' href='http://dot-net-web-developer-bristol.blogspot.com/feeds/2259817646374449276/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://dot-net-web-developer-bristol.blogspot.com/2018/08/ignoring-property-in-fixture.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5628236597237771110/posts/default/2259817646374449276'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5628236597237771110/posts/default/2259817646374449276'/><link rel='alternate' type='text/html' href='http://dot-net-web-developer-bristol.blogspot.com/2018/08/ignoring-property-in-fixture.html' title='Ignoring a property in Fixture'/><author><name>Ed</name><uri>http://www.blogger.com/profile/14414564657776968282</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='28' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhA7NO6y2cDcPNSwBrHnArGVwkCFeMb3AbeETwLQi872gDC9Q6jGbZGrbHtAcZ0vqSIEL-PlVd71XviTbUTdmoqrhevQ5V9Mp9YbtL9aCa-kFdd6LQpJKUT3toTPIsnJA/s220/AtTheFarm.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5628236597237771110.post-971554005547246907</id><published>2018-06-26T10:18:00.002+01:00</published><updated>2018-06-26T10:18:55.888+01:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="IIS"/><title type='text'>Querying an IIS Express site over the LAN</title><content type='html'>Open this file:&lt;br /&gt;
&lt;br /&gt;
&lt;i&gt;C:\Users[YourName]\Documents\IISExpress\config\applicationhost.config&lt;/i&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Add this row to the bindings element&lt;br /&gt;
&lt;br /&gt;
&lt;pre class=&quot;csharp&quot; name=&quot;code&quot;&gt;&amp;lt;binding bindinginformation=&quot;*:yyyy:xxx.xxx.xxx.xxx&quot; protocol=&quot;http&quot; /&amp;gt;&lt;/pre&gt;
&lt;br /&gt;
&lt;br /&gt;
where yyyy is your chosen port number and xxx.xxx.xxx.xxx is IP address on your network.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Run these two commands in a admin cmd prompt&lt;br /&gt;
&lt;br /&gt;
&lt;i&gt;netsh http add urlacl url=http://xxx.xxx.xxx.xxx:yyyyy/ user=everyone&lt;/i&gt;&lt;br /&gt;
&lt;i&gt;&lt;br /&gt;&lt;/i&gt;
&lt;i&gt;netsh advfirewall firewall add rule name=&quot;IISExpressWeb&quot; dir=in protocol=tcp localport=1914 profile=private remoteip=localsubnet action=allow&lt;/i&gt;</content><link rel='replies' type='application/atom+xml' href='http://dot-net-web-developer-bristol.blogspot.com/feeds/971554005547246907/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://dot-net-web-developer-bristol.blogspot.com/2018/06/querying-iis-express-site-over-lan.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5628236597237771110/posts/default/971554005547246907'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5628236597237771110/posts/default/971554005547246907'/><link rel='alternate' type='text/html' href='http://dot-net-web-developer-bristol.blogspot.com/2018/06/querying-iis-express-site-over-lan.html' title='Querying an IIS Express site over the LAN'/><author><name>Ed</name><uri>http://www.blogger.com/profile/14414564657776968282</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='28' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhA7NO6y2cDcPNSwBrHnArGVwkCFeMb3AbeETwLQi872gDC9Q6jGbZGrbHtAcZ0vqSIEL-PlVd71XviTbUTdmoqrhevQ5V9Mp9YbtL9aCa-kFdd6LQpJKUT3toTPIsnJA/s220/AtTheFarm.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5628236597237771110.post-697116854142904750</id><published>2018-02-20T10:02:00.001+00:00</published><updated>2018-02-20T10:02:36.151+00:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="c#.net"/><category scheme="http://www.blogger.com/atom/ns#" term="Entity Framework"/><title type='text'>EF edmx update wizard not responding when updating models from SQL Server 2017</title><content type='html'>Recently when updating my db-first edmx from my SQL Server 2017 database, the update wizard would hang. I overcame this problem by temporarily changing the compatibility level of the db to 2012 like so:&lt;br /&gt;
&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://3.bp.blogspot.com/-DOtpXD2VGrQ/WovxuRN-YQI/AAAAAAAAB9U/Fa43iWXm2yUBQZeS_rUtZYGCRdhYVI8lwCLcBGAs/s1600/sqlservercompat.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; data-original-height=&quot;301&quot; data-original-width=&quot;676&quot; height=&quot;142&quot; src=&quot;https://3.bp.blogspot.com/-DOtpXD2VGrQ/WovxuRN-YQI/AAAAAAAAB9U/Fa43iWXm2yUBQZeS_rUtZYGCRdhYVI8lwCLcBGAs/s320/sqlservercompat.png&quot; width=&quot;320&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;br /&gt;
So far this seems to have no ill-effects.</content><link rel='replies' type='application/atom+xml' href='http://dot-net-web-developer-bristol.blogspot.com/feeds/697116854142904750/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://dot-net-web-developer-bristol.blogspot.com/2018/02/ef-edmx-update-wizard-not-responding.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5628236597237771110/posts/default/697116854142904750'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5628236597237771110/posts/default/697116854142904750'/><link rel='alternate' type='text/html' href='http://dot-net-web-developer-bristol.blogspot.com/2018/02/ef-edmx-update-wizard-not-responding.html' title='EF edmx update wizard not responding when updating models from SQL Server 2017'/><author><name>Ed</name><uri>http://www.blogger.com/profile/14414564657776968282</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='28' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhA7NO6y2cDcPNSwBrHnArGVwkCFeMb3AbeETwLQi872gDC9Q6jGbZGrbHtAcZ0vqSIEL-PlVd71XviTbUTdmoqrhevQ5V9Mp9YbtL9aCa-kFdd6LQpJKUT3toTPIsnJA/s220/AtTheFarm.jpg'/></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://3.bp.blogspot.com/-DOtpXD2VGrQ/WovxuRN-YQI/AAAAAAAAB9U/Fa43iWXm2yUBQZeS_rUtZYGCRdhYVI8lwCLcBGAs/s72-c/sqlservercompat.png" height="72" width="72"/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5628236597237771110.post-363401887578108087</id><published>2018-02-03T21:51:00.002+00:00</published><updated>2018-02-03T21:51:46.647+00:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="Devise"/><category scheme="http://www.blogger.com/atom/ns#" term="Rails"/><category scheme="http://www.blogger.com/atom/ns#" term="Ruby"/><title type='text'>Completed 406 Not Acceptable with Devise</title><content type='html'>I had some trouble after an update of ruby/rails/gems on a something I hadn&#39;t worked on for ages. When register a user with Devise it would error with a&amp;nbsp;Completed 406 Not Acceptable with Devise&lt;br /&gt;
As usual Stack Overflow came to the rescue, where I found this: &quot;&lt;span style=&quot;background-color: white; color: #242729; font-family: &amp;quot;arial&amp;quot; , &amp;quot;helvetica neue&amp;quot; , &amp;quot;helvetica&amp;quot; , sans-serif; font-size: 15px;&quot;&gt;Devise responding to json by default has been removed from version 2.2&quot;&lt;/span&gt;
The fix was simple, I added this to my confif/application.rb and everything was working fine again:

&lt;br /&gt;
&lt;br /&gt;
&lt;pre class=&quot;csharp&quot; name=&quot;code&quot;&gt;config.to_prepare do
      DeviseController.respond_to :html, :json
    end&lt;/pre&gt;
</content><link rel='replies' type='application/atom+xml' href='http://dot-net-web-developer-bristol.blogspot.com/feeds/363401887578108087/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://dot-net-web-developer-bristol.blogspot.com/2018/02/completed-406-not-acceptable-with-devise.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5628236597237771110/posts/default/363401887578108087'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5628236597237771110/posts/default/363401887578108087'/><link rel='alternate' type='text/html' href='http://dot-net-web-developer-bristol.blogspot.com/2018/02/completed-406-not-acceptable-with-devise.html' title='Completed 406 Not Acceptable with Devise'/><author><name>Ed</name><uri>http://www.blogger.com/profile/14414564657776968282</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='28' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhA7NO6y2cDcPNSwBrHnArGVwkCFeMb3AbeETwLQi872gDC9Q6jGbZGrbHtAcZ0vqSIEL-PlVd71XviTbUTdmoqrhevQ5V9Mp9YbtL9aCa-kFdd6LQpJKUT3toTPIsnJA/s220/AtTheFarm.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5628236597237771110.post-8902122625047389299</id><published>2018-01-22T13:06:00.003+00:00</published><updated>2018-08-21T09:28:51.074+01:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="c#"/><title type='text'>C# casting from parent to child object</title><content type='html'>For some reason I&#39;ve never had to do this before (not that I can remember anyway), and it feels like I should have. I have a Child object that inherits from Parent. I want to turn an instance of a Parent object that I already have into a Child. I thought this might just be a simple cast but it doesn&#39;t work.&lt;br /&gt;
&lt;br /&gt;
&lt;a href=&quot;https://stackoverflow.com/questions/988658/unable-to-cast-from-parent-class-to-child-class&quot; target=&quot;_blank&quot;&gt;This SO post&lt;/a&gt;&amp;nbsp; was most helpful, and the neatest solution seemed to be this technique, serializing to json, and then back again:

&lt;br /&gt;
&lt;br /&gt;
&lt;pre class=&quot;csharp&quot; name=&quot;code&quot;&gt; var serializedParent = JsonConvert.SerializeObject(parentInstance); 
 Child c  = JsonConvert.DeserializeObject&amp;lt;child&amp;gt;(serializedParent);
&lt;/pre&gt;
</content><link rel='replies' type='application/atom+xml' href='http://dot-net-web-developer-bristol.blogspot.com/feeds/8902122625047389299/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://dot-net-web-developer-bristol.blogspot.com/2018/01/c-casting-from-parent-to-child-object.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5628236597237771110/posts/default/8902122625047389299'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5628236597237771110/posts/default/8902122625047389299'/><link rel='alternate' type='text/html' href='http://dot-net-web-developer-bristol.blogspot.com/2018/01/c-casting-from-parent-to-child-object.html' title='C# casting from parent to child object'/><author><name>Ed</name><uri>http://www.blogger.com/profile/14414564657776968282</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='28' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhA7NO6y2cDcPNSwBrHnArGVwkCFeMb3AbeETwLQi872gDC9Q6jGbZGrbHtAcZ0vqSIEL-PlVd71XviTbUTdmoqrhevQ5V9Mp9YbtL9aCa-kFdd6LQpJKUT3toTPIsnJA/s220/AtTheFarm.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5628236597237771110.post-6710737685694255954</id><published>2017-12-05T16:02:00.003+00:00</published><updated>2017-12-05T16:02:45.215+00:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="SQL Server"/><title type='text'>Rebuild all indexes in your database</title><content type='html'>&lt;pre&gt;
Exec sp_msforeachtable &#39;SET QUOTED_IDENTIFIER ON; ALTER INDEX ALL ON ? REBUILD&#39;
GO
&lt;/pre&gt;</content><link rel='replies' type='application/atom+xml' href='http://dot-net-web-developer-bristol.blogspot.com/feeds/6710737685694255954/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://dot-net-web-developer-bristol.blogspot.com/2017/12/rebuild-all-indexes-in-your-database.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5628236597237771110/posts/default/6710737685694255954'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5628236597237771110/posts/default/6710737685694255954'/><link rel='alternate' type='text/html' href='http://dot-net-web-developer-bristol.blogspot.com/2017/12/rebuild-all-indexes-in-your-database.html' title='Rebuild all indexes in your database'/><author><name>Ed</name><uri>http://www.blogger.com/profile/14414564657776968282</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='28' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhA7NO6y2cDcPNSwBrHnArGVwkCFeMb3AbeETwLQi872gDC9Q6jGbZGrbHtAcZ0vqSIEL-PlVd71XviTbUTdmoqrhevQ5V9Mp9YbtL9aCa-kFdd6LQpJKUT3toTPIsnJA/s220/AtTheFarm.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5628236597237771110.post-43738627513231782</id><published>2017-10-04T15:21:00.000+01:00</published><updated>2017-11-06T15:24:06.696+00:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="c#.net"/><category scheme="http://www.blogger.com/atom/ns#" term="web api"/><title type='text'>Global error handling in filter attribute MVC Web api</title><content type='html'>When I inherited the first skeleton iteration of the api I&#39;m working on every action was populated with largely repeated code whose function was to capture and log errors. I centralized all this into an attribute filter class called GlobalExceptionFilterAttribute, inheriting from&amp;nbsp;ExceptionFilterAttribute, that looks a bit like this:&lt;br /&gt;
&lt;script src=&quot;https://gist.github.com/whoshotjr/e1b50f1cc8b231ac2fa2c598625e1334.js&quot;&gt;&lt;/script&gt;

&lt;br /&gt;
And then applied it to all actions with this line in WebApiConfig.cs:

&lt;br /&gt;
&lt;pre class=&quot;csharp&quot; name=&quot;code&quot;&gt;config.Filters.Add(new GlobalExceptionFilterAttribute());
&lt;/pre&gt;

&lt;br /&gt;

Then, throughout the app, we can throw different types of error pretty much anywhere and this will ultimately be captured by the filter attribute. So, for instance most of my service layer methods look like this:

&lt;script src=&quot;https://gist.github.com/whoshotjr/39aa78620ea832db05e0d1d00682cf2f.js&quot;&gt;&lt;/script&gt;

</content><link rel='replies' type='application/atom+xml' href='http://dot-net-web-developer-bristol.blogspot.com/feeds/43738627513231782/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://dot-net-web-developer-bristol.blogspot.com/2017/10/global-error-handling-in-filter.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5628236597237771110/posts/default/43738627513231782'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5628236597237771110/posts/default/43738627513231782'/><link rel='alternate' type='text/html' href='http://dot-net-web-developer-bristol.blogspot.com/2017/10/global-error-handling-in-filter.html' title='Global error handling in filter attribute MVC Web api'/><author><name>Ed</name><uri>http://www.blogger.com/profile/14414564657776968282</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='28' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhA7NO6y2cDcPNSwBrHnArGVwkCFeMb3AbeETwLQi872gDC9Q6jGbZGrbHtAcZ0vqSIEL-PlVd71XviTbUTdmoqrhevQ5V9Mp9YbtL9aCa-kFdd6LQpJKUT3toTPIsnJA/s220/AtTheFarm.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5628236597237771110.post-4574465235504893649</id><published>2017-08-15T12:38:00.000+01:00</published><updated>2017-08-15T12:38:08.395+01:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="c#"/><category scheme="http://www.blogger.com/atom/ns#" term="c#.net"/><category scheme="http://www.blogger.com/atom/ns#" term="web api"/><title type='text'>Capturing raw data in Web Api controller</title><content type='html'>I needed to capture raw POSTed data in a Web API controller endpoint. This is how it&#39;s done:&lt;br /&gt;

&lt;pre name=&quot;code&quot; class=&quot;csharp&quot;&gt;
using (var contentStream = await this.Request.Content.ReadAsStreamAsync())
            {
                contentStream.Seek(0, SeekOrigin.Begin);
                using (var sr = new StreamReader(contentStream))
                {
                    string rawData = sr.ReadToEnd();
                }
            }
&lt;/pre&gt;
</content><link rel='replies' type='application/atom+xml' href='http://dot-net-web-developer-bristol.blogspot.com/feeds/4574465235504893649/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://dot-net-web-developer-bristol.blogspot.com/2017/08/capturing-raw-data-in-web-api-controller.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5628236597237771110/posts/default/4574465235504893649'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5628236597237771110/posts/default/4574465235504893649'/><link rel='alternate' type='text/html' href='http://dot-net-web-developer-bristol.blogspot.com/2017/08/capturing-raw-data-in-web-api-controller.html' title='Capturing raw data in Web Api controller'/><author><name>Ed</name><uri>http://www.blogger.com/profile/14414564657776968282</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='28' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhA7NO6y2cDcPNSwBrHnArGVwkCFeMb3AbeETwLQi872gDC9Q6jGbZGrbHtAcZ0vqSIEL-PlVd71XviTbUTdmoqrhevQ5V9Mp9YbtL9aCa-kFdd6LQpJKUT3toTPIsnJA/s220/AtTheFarm.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5628236597237771110.post-756935255411538380</id><published>2017-08-14T11:43:00.002+01:00</published><updated>2017-08-17T09:53:24.496+01:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="Bitbucket"/><category scheme="http://www.blogger.com/atom/ns#" term="Git"/><category scheme="http://www.blogger.com/atom/ns#" term="sourcetree"/><title type='text'>Sourcetree error &quot;remote: empty password&quot; after updating to new version 2.1.10.0</title><content type='html'>I updated my Sourcetree installation today and could no longer push to my Bitbucket repositories. Seems like I&#39;m not the only one who gets the error&lt;br /&gt;
&lt;br /&gt;
&lt;blockquote class=&quot;tr_bq&quot;&gt;
remote: empty password&lt;/blockquote&gt;
A workaround until they fix this bug is this - copy the first line of the Sourcetree error message (which is the Git command that failed), open a new terminal window (Shift-Alt-T on Windows), and paste it in, hit return. This will run the Push command and ask you for your password.
&lt;br /&gt;
&lt;br /&gt;
UPDATE:&amp;nbsp;Here&#39;s a permanent fix - delete the file named passwd located in AppData\Local\Atlassian\SourceTree</content><link rel='replies' type='application/atom+xml' href='http://dot-net-web-developer-bristol.blogspot.com/feeds/756935255411538380/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://dot-net-web-developer-bristol.blogspot.com/2017/08/sourcetree-error-remote-empty-password.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5628236597237771110/posts/default/756935255411538380'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5628236597237771110/posts/default/756935255411538380'/><link rel='alternate' type='text/html' href='http://dot-net-web-developer-bristol.blogspot.com/2017/08/sourcetree-error-remote-empty-password.html' title='Sourcetree error &quot;remote: empty password&quot; after updating to new version 2.1.10.0'/><author><name>Ed</name><uri>http://www.blogger.com/profile/14414564657776968282</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='28' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhA7NO6y2cDcPNSwBrHnArGVwkCFeMb3AbeETwLQi872gDC9Q6jGbZGrbHtAcZ0vqSIEL-PlVd71XviTbUTdmoqrhevQ5V9Mp9YbtL9aCa-kFdd6LQpJKUT3toTPIsnJA/s220/AtTheFarm.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5628236597237771110.post-545214303266030829</id><published>2017-07-20T12:44:00.000+01:00</published><updated>2017-07-20T12:44:49.862+01:00</updated><category scheme="http://www.blogger.com/atom/ns#" term=".net"/><category scheme="http://www.blogger.com/atom/ns#" term="c#.net"/><category scheme="http://www.blogger.com/atom/ns#" term="Crystal Reports"/><category scheme="http://www.blogger.com/atom/ns#" term="MVC"/><category scheme="http://www.blogger.com/atom/ns#" term="regedit"/><title type='text'>Crystal report ExportToDisk as PDF loses barcode font</title><content type='html'>I&#39;ve been working on a .Net MVC Web API, part of which takes some data and produces a PDF using ExportToDisk provided by CrystalDecisions.CrystalReports.Engine.dll.&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
This proved to be relatively easy, as did the inclusion of a barcode font in the report, along with some vb code in a forumula field, that cleverly takes a supplied number and renders it as a barcode.&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
A problem arose when exporting a report containing this barcode to PDF - the barcode was not visible in the PDF. This seems to be a common problem with what feels like a rather hacky fix - adding a registry key. This is how it&#39;s done:&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
Open up registry editor (regedit) and navigate to&amp;nbsp;HKEY_CURRENT_USER\Software\SAP BusinessObjects\Crystal Reports for .NET Framework 4.0\Crystal Reports\Export. Add a new key called PDF, and a new value to it of Type &#39;DWORD&#39; and name &#39;ForceLargerFonts&#39; and value &#39;1&#39;. It should look like this when you&#39;ve done:&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://2.bp.blogspot.com/-GF6sp8vFzY4/WXCXasavh_I/AAAAAAAABnU/_I_dU04mEYQsrAmHQj5G8vhhFENVFp23wCLcBGAs/s1600/regedit.PNG&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; data-original-height=&quot;383&quot; data-original-width=&quot;863&quot; height=&quot;142&quot; src=&quot;https://2.bp.blogspot.com/-GF6sp8vFzY4/WXCXasavh_I/AAAAAAAABnU/_I_dU04mEYQsrAmHQj5G8vhhFENVFp23wCLcBGAs/s320/regedit.PNG&quot; width=&quot;320&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
</content><link rel='replies' type='application/atom+xml' href='http://dot-net-web-developer-bristol.blogspot.com/feeds/545214303266030829/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://dot-net-web-developer-bristol.blogspot.com/2017/07/crystal-report-exporttodisk-as-pdf.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5628236597237771110/posts/default/545214303266030829'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5628236597237771110/posts/default/545214303266030829'/><link rel='alternate' type='text/html' href='http://dot-net-web-developer-bristol.blogspot.com/2017/07/crystal-report-exporttodisk-as-pdf.html' title='Crystal report ExportToDisk as PDF loses barcode font'/><author><name>Ed</name><uri>http://www.blogger.com/profile/14414564657776968282</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='28' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhA7NO6y2cDcPNSwBrHnArGVwkCFeMb3AbeETwLQi872gDC9Q6jGbZGrbHtAcZ0vqSIEL-PlVd71XviTbUTdmoqrhevQ5V9Mp9YbtL9aCa-kFdd6LQpJKUT3toTPIsnJA/s220/AtTheFarm.jpg'/></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://2.bp.blogspot.com/-GF6sp8vFzY4/WXCXasavh_I/AAAAAAAABnU/_I_dU04mEYQsrAmHQj5G8vhhFENVFp23wCLcBGAs/s72-c/regedit.PNG" height="72" width="72"/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5628236597237771110.post-8496688341258976046</id><published>2017-06-02T14:02:00.002+01:00</published><updated>2017-06-02T14:02:45.475+01:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="installation"/><category scheme="http://www.blogger.com/atom/ns#" term="installer"/><category scheme="http://www.blogger.com/atom/ns#" term="msi"/><category scheme="http://www.blogger.com/atom/ns#" term="setup"/><category scheme="http://www.blogger.com/atom/ns#" term="Visual Studio"/><category scheme="http://www.blogger.com/atom/ns#" term="windows"/><title type='text'>Writing ProductVersion to a text file during installation</title><content type='html'>Today I was tasked with creating a text file during the running of an MSI installer, and writing the app&#39;s ProductVersion to it, so that our remote admin tools could read at a glance what versions our users were running.&lt;br /&gt;
&lt;br /&gt;
First of all I needed to create an Installer Class in the app, and then override the Install method like so, capturing an input parameter and writing it to a text file:&lt;br /&gt;
&lt;br /&gt;
&lt;pre class=&quot;csharp&quot; name=&quot;code&quot;&gt; public override void Install(IDictionary savedState)
        {
            base.Install(savedState);

            string version = Context.Parameters[&quot;Version&quot;];

            string path2 = &quot;C:\\MyFile.txt&quot;;

            try
            {
                FileStream fs1 = new FileStream(path2, FileMode.OpenOrCreate, FileAccess.Write);
                StreamWriter writer1 = new StreamWriter(fs1);
                writer1.Write(&quot;Version:&quot; + &quot;\r\n&quot; +
                             version);
                writer1.Close();
            }
            catch (Exception)
            {
               //do something here if you need to
            }
}
&lt;/pre&gt;
&lt;pre class=&quot;csharp&quot; name=&quot;code&quot;&gt;&lt;/pre&gt;
Then, in the Setup project, &amp;nbsp;I added Custom Action. Right-click on the project, go to View &amp;gt; Custom Actions. Right-click on the install folder, and select Add Custom Action. Browse to the Application folder, select the primary output, and click &#39;Add Output&#39;. Then, select the thing you&#39;ve just added, and in the properties window, do the following:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://4.bp.blogspot.com/-_rKyI49L5zY/WTFha_dyb-I/AAAAAAAABmQ/_fvmeBFB3aghS0UD4FHPbPYXRshsduFwQCLcB/s1600/Capture1111.PNG&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; data-original-height=&quot;63&quot; data-original-width=&quot;579&quot; height=&quot;41&quot; src=&quot;https://4.bp.blogspot.com/-_rKyI49L5zY/WTFha_dyb-I/AAAAAAAABmQ/_fvmeBFB3aghS0UD4FHPbPYXRshsduFwQCLcB/s400/Capture1111.PNG&quot; width=&quot;400&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
</content><link rel='replies' type='application/atom+xml' href='http://dot-net-web-developer-bristol.blogspot.com/feeds/8496688341258976046/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://dot-net-web-developer-bristol.blogspot.com/2017/06/writing-productversion-to-text-file.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5628236597237771110/posts/default/8496688341258976046'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5628236597237771110/posts/default/8496688341258976046'/><link rel='alternate' type='text/html' href='http://dot-net-web-developer-bristol.blogspot.com/2017/06/writing-productversion-to-text-file.html' title='Writing ProductVersion to a text file during installation'/><author><name>Ed</name><uri>http://www.blogger.com/profile/14414564657776968282</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='28' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhA7NO6y2cDcPNSwBrHnArGVwkCFeMb3AbeETwLQi872gDC9Q6jGbZGrbHtAcZ0vqSIEL-PlVd71XviTbUTdmoqrhevQ5V9Mp9YbtL9aCa-kFdd6LQpJKUT3toTPIsnJA/s220/AtTheFarm.jpg'/></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://4.bp.blogspot.com/-_rKyI49L5zY/WTFha_dyb-I/AAAAAAAABmQ/_fvmeBFB3aghS0UD4FHPbPYXRshsduFwQCLcB/s72-c/Capture1111.PNG" height="72" width="72"/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5628236597237771110.post-7925005277891832829</id><published>2017-05-18T10:18:00.001+01:00</published><updated>2017-05-18T10:18:24.383+01:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="Visual Studio"/><category scheme="http://www.blogger.com/atom/ns#" term="xamarin"/><title type='text'>Visual Studio 2017 freezes / crashes when I open the toolbox</title><content type='html'>I recently installed VS 2017 on a new Win 10 machine, and I had a problem when trying to open the toolbox window - the whole IDE would just freeze and never recover.&lt;br /&gt;
&lt;br /&gt;
This is a problem with the Xamarin extension that is yet to be fixed, apparently it is trying to warn us something about the Android SDK (that it might not be installed?), but instead it brings the whole thing to a halt. The quick fix is to disable the Xamarin extension - but I guess installing the Android SDK may fix it too.</content><link rel='replies' type='application/atom+xml' href='http://dot-net-web-developer-bristol.blogspot.com/feeds/7925005277891832829/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://dot-net-web-developer-bristol.blogspot.com/2017/05/visual-studio-2017-freezes-crashes-when.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5628236597237771110/posts/default/7925005277891832829'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5628236597237771110/posts/default/7925005277891832829'/><link rel='alternate' type='text/html' href='http://dot-net-web-developer-bristol.blogspot.com/2017/05/visual-studio-2017-freezes-crashes-when.html' title='Visual Studio 2017 freezes / crashes when I open the toolbox'/><author><name>Ed</name><uri>http://www.blogger.com/profile/14414564657776968282</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='28' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhA7NO6y2cDcPNSwBrHnArGVwkCFeMb3AbeETwLQi872gDC9Q6jGbZGrbHtAcZ0vqSIEL-PlVd71XviTbUTdmoqrhevQ5V9Mp9YbtL9aCa-kFdd6LQpJKUT3toTPIsnJA/s220/AtTheFarm.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5628236597237771110.post-7364307740515198548</id><published>2017-03-10T16:58:00.002+00:00</published><updated>2017-03-10T16:58:42.911+00:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="Visual Studio"/><category scheme="http://www.blogger.com/atom/ns#" term="VS2017"/><title type='text'>Visual Studio 2017 install stuck on Applying Microsoft.VisualStudio.Debugger.JustInTime</title><content type='html'>This happened to me and I tried lots of things to overcome the problem - eventually I found I had to this:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;ul&gt;
&lt;li&gt;Switch off AVG antivirus protection&lt;/li&gt;
&lt;li&gt;Switch off &amp;nbsp;&#39;Real-time protection&#39; on your Windows Defender settings&lt;/li&gt;
&lt;li&gt;Restart&lt;/li&gt;
&lt;/ul&gt;
&lt;div&gt;
After restart my install started where it left off and didn&#39;t get stuck again!&lt;/div&gt;
</content><link rel='replies' type='application/atom+xml' href='http://dot-net-web-developer-bristol.blogspot.com/feeds/7364307740515198548/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://dot-net-web-developer-bristol.blogspot.com/2017/03/visual-studio-2017-install-stuck-on.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5628236597237771110/posts/default/7364307740515198548'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5628236597237771110/posts/default/7364307740515198548'/><link rel='alternate' type='text/html' href='http://dot-net-web-developer-bristol.blogspot.com/2017/03/visual-studio-2017-install-stuck-on.html' title='Visual Studio 2017 install stuck on Applying Microsoft.VisualStudio.Debugger.JustInTime'/><author><name>Ed</name><uri>http://www.blogger.com/profile/14414564657776968282</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='28' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhA7NO6y2cDcPNSwBrHnArGVwkCFeMb3AbeETwLQi872gDC9Q6jGbZGrbHtAcZ0vqSIEL-PlVd71XviTbUTdmoqrhevQ5V9Mp9YbtL9aCa-kFdd6LQpJKUT3toTPIsnJA/s220/AtTheFarm.jpg'/></author><thr:total>0</thr:total></entry></feed>