<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" media="screen" href="/~d/styles/atom10full.xsl"?><?xml-stylesheet type="text/css" media="screen" href="http://feeds.feedburner.com/~d/styles/itemcontent.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"><id>tag:blogger.com,1999:blog-20371103</id><updated>2009-11-02T22:43:19.186-08:00</updated><title type="text">Sharepoint Tips And Tricks</title><subtitle type="html">Sharepoint Tips And Tricks is Ishai Sagi's sharepoint information blog. It specializes in Microsoft SharePoint technologies, including web parts, development, configuration, customization, and best practices for the use of Microsoft SharePoint Server and Windows SharePoint Services.
It also provides some related Office Information, including VSTO and VSTA and other office application development tips.</subtitle><link rel="http://schemas.google.com/g/2005#feed" type="application/atom+xml" href="http://www.sharepoint-tips.com/feeds/posts/default" /><link rel="alternate" type="text/html" href="http://www.sharepoint-tips.com/" /><link rel="hub" href="http://pubsubhubbub.appspot.com/" /><link rel="next" type="application/atom+xml" href="http://www.blogger.com/feeds/20371103/posts/default?start-index=26&amp;max-results=25" /><author><name>Ishai Sagi [SharePoint MVP]</name><uri>http://www.blogger.com/profile/15906615979471157409</uri><email>noreply@blogger.com</email></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><link rel="self" href="http://feeds.feedburner.com/SharepointTipsAndTricks" type="application/atom+xml" /><feedburner:emailServiceId xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0">SharepointTipsAndTricks</feedburner:emailServiceId><feedburner:feedburnerHostname xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0">http://feedburner.google.com</feedburner:feedburnerHostname><atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="hub" href="http://pubsubhubbub.appspot.com" /><entry><id>tag:blogger.com,1999:blog-20371103.post-3955140411379124721</id><published>2009-10-22T13:01:00.001-07:00</published><updated>2009-10-22T13:09:58.266-07:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="SharePoint 2010 Beta" /><title type="text">Closing thoughts from the SharePoint conference</title><content type="html">&lt;p&gt;I am sitting in the last session, and I have to admit- I am a little bit afraid of SharePoint 2010. There is just so much more, that it makes the step from SharePoint 2003 to 2007 seem small in comparison. I think we should thank the SharePoint product team for an enormous effort to get all this new stuff in - and give us some very complex stuff to work with.&lt;/p&gt;&lt;p&gt;I am looking forward to doing search solutions, writing visual web parts, developing better event handlers (post synchronous events!), designing in sharepoint designer and then moving the design to visual studio and more and more and more.&lt;/p&gt;&lt;p&gt;If you get access to the presentation videos - make sure you listen to Mike Ammerlaan's presentation titled "Architecture guidance for building applications in SharePoint 2010" - not sure how much of that will be reviewed during the beta period (starting next month) but this was THE best and most important presentation in the conference - giving us thumb rules of what to use when, and some key pointers to making decisions on what to use in different development scenarios. Thanks Mike!&lt;/p&gt;&lt;p&gt;Finally, there are things I am dissapointed with - like a continued lack of support for custom fields in office, and no exciting new field controls. But the good overweighs the bad. I will have a think about what I have seen in the next two weeks, and then start blogging again - from TechEd Europe. &lt;/p&gt;&lt;p&gt;For now - I am going to see the grand canyon, visit Munich, and have a week's vacation in Israel with my family. Be patient, and more posts will come in tow to three weeks. If you are coming to TechED and want to chat - see you in Berlin in the Ask The Experts booth!

&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;p&gt;
&lt;script type="text/javascript"&gt;&lt;!--
google_ad_client="ca-pub-2727174828663024";
google_ad_width=468;
google_ad_height=60;
google_ad_format="468x60_as";
google_ad_type="text";
google_color_border="333333";
google_color_bg="940F04";
google_color_link="99C9FF";
google_color_url="99C9FF";
google_color_text="FFFFFF";
//--&gt;&lt;/script&gt;
&lt;script type="text/javascript"
  src="http://pagead2.googlesyndication.com/pagead/show_ads.js"&gt;
&lt;/script&gt;
&lt;/p&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/20371103-3955140411379124721?l=www.sharepoint-tips.com'/&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/3AtLp4TIOyUoxiw4-mNprqb_Zm8/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/3AtLp4TIOyUoxiw4-mNprqb_Zm8/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/3AtLp4TIOyUoxiw4-mNprqb_Zm8/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/3AtLp4TIOyUoxiw4-mNprqb_Zm8/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;</content><link rel="replies" type="application/atom+xml" href="http://www.sharepoint-tips.com/feeds/3955140411379124721/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="https://www.blogger.com/comment.g?blogID=20371103&amp;postID=3955140411379124721" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/20371103/posts/default/3955140411379124721" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/20371103/posts/default/3955140411379124721" /><link rel="alternate" type="text/html" href="http://www.sharepoint-tips.com/2009/10/closing-thoughts-from-sharepoint.html" title="Closing thoughts from the SharePoint conference" /><author><name>Ishai Sagi [SharePoint MVP]</name><uri>http://www.blogger.com/profile/15906615979471157409</uri><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd="http://schemas.google.com/g/2005" name="OpenSocialUserId" value="11018880968906117177" /></author><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-20371103.post-3413913596211628494</id><published>2009-10-21T13:14:00.000-07:00</published><updated>2009-10-21T13:30:19.039-07:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="SharePoint 2010 Beta" /><title type="text">What I like and dont like about the new BDC (the BCS)</title><content type="html">&lt;p&gt;To get one thing clear - when BDC came in MOSS2007 I was very excited about it. I really thought it was great...until I had to do a real life project with it.&lt;/p&gt;&lt;p&gt;No, I am not talking about the pains I went through to create an application definition (this was before the BDC metaman or the tool that Microsoft released a bit later) - I am talking about how the BDC integration to sharepoint was so limited.&lt;/p&gt;&lt;p&gt;Every single customer who had a problem that I wanted to solve using BDC had the exact same requirements that I couldnt give them using BDC:&lt;/p&gt;&lt;ol&gt;&lt;li&gt;We want it to work in office&lt;/li&gt;&lt;li&gt;We want it to be a multiple item selection&lt;/li&gt;&lt;/ol&gt;&lt;p&gt;There is no way in MOSS2007 to achieve both in BDC. You can develop a custom field type that will allow multiple selections from BDC information, but you cannot use a custom field type in Office. And the built in BDC column type only allows single selection.&lt;/p&gt;&lt;p&gt;That makes me sad.&lt;/p&gt;&lt;p&gt;In 2010, the "BCS" is much improved. It makes me even more excited about what I can do with it. It has "external lists" - which are fancy web parts that make the BDC data appear to be as if it is in a sharepoint list- including filtering, adding items, editing items and so on (not full functionality of a list though). There are two designers for the applications - no more XML! just use sharepoint designer or visual studio and create application definitions easily. Heck, in VS2010 you can create the connector to the LOB system in the same project as the application definition model - and refactor stuff later. This is &lt;strong&gt;EXCITING and GREAT &lt;/strong&gt;stuff. Not to mention the object model, the (&lt;strong&gt;much&lt;/strong&gt;) better support for item level security and so on.&lt;/p&gt;&lt;p&gt;But it still does not solve the problem I described above - the BCS column type is still a single lookup. &lt;/p&gt;&lt;p&gt;I was hoping that Microsoft would introduce better support for custom field types in Office 2010, but that is not happening either, so there is no oppertunity for me to develop a custom code to do that.&lt;/p&gt;&lt;p&gt;This makes me even sadder.&lt;/p&gt;&lt;p&gt;Can everyone please join me in asking Microsoft to&lt;/p&gt;&lt;ol&gt;&lt;li&gt;Release a better BCS field type before RTM of as part of SP1 and make BCS perfect&lt;/li&gt;&lt;li&gt;Redesign how custom fields are supported in office applications for SharePoint 15&lt;/li&gt;&lt;/ol&gt;&lt;p&gt;Meanwhile, I will enjoy the cool new features.

&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;p&gt;
&lt;script type="text/javascript"&gt;&lt;!--
google_ad_client="ca-pub-2727174828663024";
google_ad_width=468;
google_ad_height=60;
google_ad_format="468x60_as";
google_ad_type="text";
google_color_border="333333";
google_color_bg="940F04";
google_color_link="99C9FF";
google_color_url="99C9FF";
google_color_text="FFFFFF";
//--&gt;&lt;/script&gt;
&lt;script type="text/javascript"
  src="http://pagead2.googlesyndication.com/pagead/show_ads.js"&gt;
&lt;/script&gt;
&lt;/p&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/20371103-3413913596211628494?l=www.sharepoint-tips.com'/&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/En3mZ3rSTm4DOt5yoIUoMB5YEfE/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/En3mZ3rSTm4DOt5yoIUoMB5YEfE/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/En3mZ3rSTm4DOt5yoIUoMB5YEfE/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/En3mZ3rSTm4DOt5yoIUoMB5YEfE/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;</content><link rel="replies" type="application/atom+xml" href="http://www.sharepoint-tips.com/feeds/3413913596211628494/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="https://www.blogger.com/comment.g?blogID=20371103&amp;postID=3413913596211628494" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/20371103/posts/default/3413913596211628494" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/20371103/posts/default/3413913596211628494" /><link rel="alternate" type="text/html" href="http://www.sharepoint-tips.com/2009/10/what-i-like-and-dont-like-about-new-bdc.html" title="What I like and dont like about the new BDC (the BCS)" /><author><name>Ishai Sagi [SharePoint MVP]</name><uri>http://www.blogger.com/profile/15906615979471157409</uri><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd="http://schemas.google.com/g/2005" name="OpenSocialUserId" value="11018880968906117177" /></author><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-20371103.post-6217619992588324478</id><published>2009-10-20T13:24:00.000-07:00</published><updated>2009-10-20T13:47:01.384-07:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="SharePoint 2010 Beta" /><title type="text">Joke of the day from SharePoint conference 2009</title><content type="html">&lt;p&gt;quote: "if I don't need to dispose objects in the client object model, and it can do whatever you can do in the server object model, I am going to use it on the server!"&lt;/p&gt;&lt;p&gt;Ishai comments: good joke - do not take seriously please...
&lt;/p&gt;&lt;p&gt;&lt;span style="color:#cc0000;"&gt;Update&lt;/span&gt;: it turns out you &lt;strong&gt;do&lt;/strong&gt; need to dispose of them (when using them in .Net applications)&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;p&gt;
&lt;script type="text/javascript"&gt;&lt;!--
google_ad_client="ca-pub-2727174828663024";
google_ad_width=468;
google_ad_height=60;
google_ad_format="468x60_as";
google_ad_type="text";
google_color_border="333333";
google_color_bg="940F04";
google_color_link="99C9FF";
google_color_url="99C9FF";
google_color_text="FFFFFF";
//--&gt;&lt;/script&gt;
&lt;script type="text/javascript"
  src="http://pagead2.googlesyndication.com/pagead/show_ads.js"&gt;
&lt;/script&gt;
&lt;/p&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/20371103-6217619992588324478?l=www.sharepoint-tips.com'/&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/pkVsz6snpJOq6DasrZuX9NKSJZQ/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/pkVsz6snpJOq6DasrZuX9NKSJZQ/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/pkVsz6snpJOq6DasrZuX9NKSJZQ/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/pkVsz6snpJOq6DasrZuX9NKSJZQ/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;</content><link rel="replies" type="application/atom+xml" href="http://www.sharepoint-tips.com/feeds/6217619992588324478/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="https://www.blogger.com/comment.g?blogID=20371103&amp;postID=6217619992588324478" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/20371103/posts/default/6217619992588324478" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/20371103/posts/default/6217619992588324478" /><link rel="alternate" type="text/html" href="http://www.sharepoint-tips.com/2009/10/joke-of-day-from-sharepoint-conference.html" title="Joke of the day from SharePoint conference 2009" /><author><name>Ishai Sagi [SharePoint MVP]</name><uri>http://www.blogger.com/profile/15906615979471157409</uri><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd="http://schemas.google.com/g/2005" name="OpenSocialUserId" value="11018880968906117177" /></author><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-20371103.post-6527299290781358757</id><published>2009-10-20T11:04:00.000-07:00</published><updated>2009-10-20T11:44:09.777-07:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="SharePoint 2010 Beta" /><title type="text">Upgrading custom developed solutions to SharePoint 2010</title><content type="html">&lt;p&gt;I am sitting in the presentation by &lt;a href="http://www.kwizcom.com/"&gt;KwizCom&lt;/a&gt; who are telling about their expirience with upgrading &lt;a href="http://www.kwizcom.com/Products.asp"&gt;their products and web parts&lt;/a&gt; to SharePoint 2010. This is exactly the kind of session I came here to hear - get real life expirience from real life senarios.&lt;/p&gt;&lt;p&gt;Shai Petel is a huge expert in SharePoint development - his presenation is focused on &lt;strong&gt;what you &lt;/strong&gt;&lt;strong&gt;need to do Today to make your current projects be ready for the upgrade&lt;/strong&gt;.&lt;/p&gt;&lt;p&gt;He suggests to train the developers to use Ajax, JSON, silverlight, visual user controls (which I have to admit - it has been ages since I developed a web interface with a designer!).&lt;/p&gt;&lt;p&gt;He also suggests that if you want your solution to be hosted in the cloud, try to limit the solution scope to a site collection level. He did not explain, but I am guessing this is because of sandboxing restrictions.&lt;/p&gt;&lt;p&gt;Shai also encourages you to make sure you use the ASP.NET web part class for your web parts. He explains that the WSS web part class is supported for backward compatability, but does not recommend it.&lt;/p&gt;&lt;p&gt;Shai also recommends working on windows 2008 R2 and running hyper-v machines as your development environment. I don't agree - windows 7 is a (almost) perfect operating system, you can run moss on it, and using Sun VirtualBox (free, and open source) you can create 64bit virtual machines - and from my expirience on my laptop - win2008 just doesnt run as fast.&lt;/p&gt;&lt;p&gt;Now to upgrading a solution. Shai stresses that you should use the same namespacec and assembly evidence - this will allow sharepoint to recognise your solution during the upgrade.&lt;/p&gt;&lt;p&gt;Shai talked about upgrading his "sharepoint list forms extensions" - he showed how the solution looked like in 2007 - both in the screen (new links in list settings and in list forms) and in the code - showing a solution (connected to source safe? who uses source safe these days? or maybe I misread what I was looking at?). He then showed what he added in the 2010 version for the same solution - explaining how in 2007 they couldnt use WSP packages for the solution (due to limitations of the WSP infrastructure) and how now they are using WSP (due to improvements - mostly around version management - see further information below).&lt;/p&gt;&lt;p&gt;Shai opened a new empty VS2010 project, and built the structure for the project that you want, and then migrated his old code into the new project. Then, using a designer in visual studio, defined what features (from the old solution) should be deployed by the solution. He suggested it takes up to 4 hours to do that on a big and complex project.&lt;/p&gt;&lt;p&gt;He then showed how he added new code (or, rather, XML definitions) to replace old custom actions with new ones that would put the custom actions he had in the tool bars into the ribbon instead.&lt;/p&gt;&lt;p&gt;At this point Shai's Virtual machine crashed (working on pre-beta version - this is happening to many speakers here I guess. this is the second presentation in a row that I see this happening to) so he continued with his powerpoint and concluded that with a project that &lt;strong&gt;DIDNT use VSEwss &lt;/strong&gt;(visual studio extensions for wss3) is pretty simple - create new project in VS2010, import existing files, set up the features (using a designer) and add what ever you need.&lt;/p&gt;&lt;p&gt;With projects that were created using VSeWSS need to be opened using a tool that comes with visual studio 2010.&lt;/p&gt;&lt;p&gt;To upgrade an existing WSP package - there is an import wizard in VS2010 that allows you to select which part of the solution you want to import, and it imports it into a new VS2010 project - &lt;strong&gt;&lt;u&gt;all except the code&lt;/u&gt;&lt;/strong&gt;. So it does give you the feautres and images and so on, and puts them in the new project structure that VS2010 needs.&lt;/p&gt;&lt;p&gt;
About versioning support in packaged solutions - Shai explained that this was missing in 2007 - and is now available. I had many headaches with WSP packages versioning - it is very hard to mark a version number in a package - you have to keep updating a web.config file to make sure sharepoint uses the new version if you change the version of the dll. Shai suggested the same method I have been using - store the version number on a file that is deployed with the package instead. An "about" page can show the user what version is deployed on the server.&lt;/p&gt;&lt;p&gt;Shai then explained that he recommends deploying solution resources into a folder marked with the version number - for example : "_layouts/mysolution2.0.0.1" - this will make sure the solution can be hosted - and then upgraded just for one customer that uses the server, while other customers use the old version - the resource files were not overwritten (remember the assembly in such scenarios is sandboxed - so not in the GAC but rather in SQL and is unique per site collection - which allows this kind of trick).&lt;/p&gt;&lt;p&gt;The new user interface for managing solutions in a site collection (sandbox) will show you if there is an upgrade available for a solution. Us developers can specify that a solution can be updated, and then sharepoint will show that to the users. I expected something more sophisticated - something like how most applications today do upgrades, but I need to get my hands on this feature before I can comment on it fully.&lt;/p&gt;&lt;p&gt;To summarize - good presenation (if a bit rushed and mis-titled) and exciting things ahead!&lt;/p&gt;&lt;p&gt; &lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;p&gt;
&lt;script type="text/javascript"&gt;&lt;!--
google_ad_client="ca-pub-2727174828663024";
google_ad_width=468;
google_ad_height=60;
google_ad_format="468x60_as";
google_ad_type="text";
google_color_border="333333";
google_color_bg="940F04";
google_color_link="99C9FF";
google_color_url="99C9FF";
google_color_text="FFFFFF";
//--&gt;&lt;/script&gt;
&lt;script type="text/javascript"
  src="http://pagead2.googlesyndication.com/pagead/show_ads.js"&gt;
&lt;/script&gt;
&lt;/p&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/20371103-6527299290781358757?l=www.sharepoint-tips.com'/&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/uragXk9aZe0qGMOlVxo5cQtRnmA/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/uragXk9aZe0qGMOlVxo5cQtRnmA/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/uragXk9aZe0qGMOlVxo5cQtRnmA/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/uragXk9aZe0qGMOlVxo5cQtRnmA/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;</content><link rel="replies" type="application/atom+xml" href="http://www.sharepoint-tips.com/feeds/6527299290781358757/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="https://www.blogger.com/comment.g?blogID=20371103&amp;postID=6527299290781358757" title="3 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/20371103/posts/default/6527299290781358757" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/20371103/posts/default/6527299290781358757" /><link rel="alternate" type="text/html" href="http://www.sharepoint-tips.com/2009/10/upgrading-custom-developed-solutions-to.html" title="Upgrading custom developed solutions to SharePoint 2010" /><author><name>Ishai Sagi [SharePoint MVP]</name><uri>http://www.blogger.com/profile/15906615979471157409</uri><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd="http://schemas.google.com/g/2005" name="OpenSocialUserId" value="11018880968906117177" /></author><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">3</thr:total></entry><entry><id>tag:blogger.com,1999:blog-20371103.post-1031345457775020459</id><published>2009-10-20T09:30:00.000-07:00</published><updated>2009-10-20T09:57:19.530-07:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="SharePoint 2010 Beta" /><title type="text">SharePoint 2010 Web Parts and WiKi pages</title><content type="html">&lt;p&gt;Wiki web parts - are new and do not have web part zones. You can add the web part in the text. This will allow us to give an option for the end users to create a page without an underlying page layout.&lt;/p&gt;&lt;p&gt;This works with hidden zones - which is where the web parts are actually &lt;strong&gt;stored&lt;/strong&gt; but the location of the web part is marked in the wiki content using place holders. During rendering the webpart contents are moved to the in line location after rendering.

Maurice just showed what happens if you retract a solution that had the web part that was added to a wiki page. The page was then refreshed - and no crash - the web part just disappeared from the page. however, when you go to the maintnance page (add a "?contents=1" to the page url) you can see there is an "error web part" on the page. It still doesnt tell you what that web part used to be - which is something I expected Microsoft to improve from 2007.&lt;/p&gt;&lt;p&gt;Also, Maurice showed a bug that is with the current version and he is not sure if it is going to be fixed - when you delete an error web part, the div with the web part ID remains in the content of the wiki page - not visible, but it is making the page heavier, and messier.&lt;/p&gt;&lt;p&gt;To add a web part to wiki pages using code, you add the web part as usual (using the web part manager) and then you change the text for the wiki to include a div that links to the GUID of the web part.&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;p&gt;
&lt;script type="text/javascript"&gt;&lt;!--
google_ad_client="ca-pub-2727174828663024";
google_ad_width=468;
google_ad_height=60;
google_ad_format="468x60_as";
google_ad_type="text";
google_color_border="333333";
google_color_bg="940F04";
google_color_link="99C9FF";
google_color_url="99C9FF";
google_color_text="FFFFFF";
//--&gt;&lt;/script&gt;
&lt;script type="text/javascript"
  src="http://pagead2.googlesyndication.com/pagead/show_ads.js"&gt;
&lt;/script&gt;
&lt;/p&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/20371103-1031345457775020459?l=www.sharepoint-tips.com'/&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/fwsws_OkOEYFQVPxcpmxYTK9QLg/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/fwsws_OkOEYFQVPxcpmxYTK9QLg/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/fwsws_OkOEYFQVPxcpmxYTK9QLg/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/fwsws_OkOEYFQVPxcpmxYTK9QLg/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;</content><link rel="replies" type="application/atom+xml" href="http://www.sharepoint-tips.com/feeds/1031345457775020459/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="https://www.blogger.com/comment.g?blogID=20371103&amp;postID=1031345457775020459" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/20371103/posts/default/1031345457775020459" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/20371103/posts/default/1031345457775020459" /><link rel="alternate" type="text/html" href="http://www.sharepoint-tips.com/2009/10/sharepoint-2010-web-parts-and-wiki.html" title="SharePoint 2010 Web Parts and WiKi pages" /><author><name>Ishai Sagi [SharePoint MVP]</name><uri>http://www.blogger.com/profile/15906615979471157409</uri><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd="http://schemas.google.com/g/2005" name="OpenSocialUserId" value="11018880968906117177" /></author><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-20371103.post-7605452723364409850</id><published>2009-10-20T09:11:00.000-07:00</published><updated>2009-10-20T09:30:50.738-07:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="SharePoint 2010 Beta" /><title type="text">SharePoint 2010 - No more reasons for WSS web parts</title><content type="html">&lt;p&gt;
I am now in the session presented by Maurice Prather - a web part guru who used to be in Microsoft working on sharepoint in the past. He is now discussing my favorite topic- how to develop and deploy web parts in sharepoint 2010.


News - WSS web part are phassed out. How is this different than 2007? they already said that in the past - the framework still gives the wss web part the same benefits - caching, better communication options and WSPC. &lt;/p&gt;&lt;p&gt;How is it possible to stop using the WSS web part class? the answer is that in asp.net web parts will now have more functionality available to them such as:&lt;/p&gt;&lt;ol&gt;&lt;li&gt;Versioning of web parts in pages - if you make a change in a web part in a page - and then revert the page to old version of the page, the web part will be versioned with the page.&lt;/li&gt;&lt;li&gt;Ajax&lt;/li&gt;&lt;li&gt;Client object model&lt;/li&gt;&lt;li&gt;Cross site scripting safeguards&lt;/li&gt;&lt;li&gt;sandboxed solutions (I wrote about that yesterday)&lt;/li&gt;&lt;/ol&gt;&lt;p&gt;So I don't see a solution for caching - you should implement the native ASP.NET cache.&lt;/p&gt;&lt;p&gt;WPSC will still exist for WSS web parts - so you can still do client side collections with it. But - now that you can do it with ajax, there is no reason why to use a WSS web part.&lt;/p&gt;&lt;p&gt; &lt;/p&gt;&lt;p&gt;
&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;p&gt;
&lt;script type="text/javascript"&gt;&lt;!--
google_ad_client="ca-pub-2727174828663024";
google_ad_width=468;
google_ad_height=60;
google_ad_format="468x60_as";
google_ad_type="text";
google_color_border="333333";
google_color_bg="940F04";
google_color_link="99C9FF";
google_color_url="99C9FF";
google_color_text="FFFFFF";
//--&gt;&lt;/script&gt;
&lt;script type="text/javascript"
  src="http://pagead2.googlesyndication.com/pagead/show_ads.js"&gt;
&lt;/script&gt;
&lt;/p&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/20371103-7605452723364409850?l=www.sharepoint-tips.com'/&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/oTCOVAXmNGTj7TjJ84Zc4a3Oa8U/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/oTCOVAXmNGTj7TjJ84Zc4a3Oa8U/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/oTCOVAXmNGTj7TjJ84Zc4a3Oa8U/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/oTCOVAXmNGTj7TjJ84Zc4a3Oa8U/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;</content><link rel="replies" type="application/atom+xml" href="http://www.sharepoint-tips.com/feeds/7605452723364409850/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="https://www.blogger.com/comment.g?blogID=20371103&amp;postID=7605452723364409850" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/20371103/posts/default/7605452723364409850" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/20371103/posts/default/7605452723364409850" /><link rel="alternate" type="text/html" href="http://www.sharepoint-tips.com/2009/10/sharepoint-2010-no-more-reasons-for-wss.html" title="SharePoint 2010 - No more reasons for WSS web parts" /><author><name>Ishai Sagi [SharePoint MVP]</name><uri>http://www.blogger.com/profile/15906615979471157409</uri><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd="http://schemas.google.com/g/2005" name="OpenSocialUserId" value="11018880968906117177" /></author><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-20371103.post-5647709871348059193</id><published>2009-10-19T17:36:00.001-07:00</published><updated>2009-10-19T17:36:55.689-07:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="SharePoint 2010 Beta" /><title type="text">Training SharePoint 2010 Developers</title><content type="html">&lt;p&gt;
And my friend &lt;a href="http://kwizcom.blogspot.com/"&gt;Shay Petel&lt;/a&gt; is asking a serious question - when doing sharepoint training - do you start with sandboxed solutions so that you can use them during the course, or do you only get to them after teaching people how to develop web parts and other solutions using the standard WSP deployment mechanism? This is a big question that us trainers need to tackle. This whole developer training for sharepoint is going to blow out of proportion for us in the next year - from being a 5 day course for sharepoint 2007, I think we are going to need a 10 day course in 2010, and that may not be enough.
&lt;br/&gt;
That said, I think that things like visual web part development significantly reduce the training time required - since asp.net developers will not have a problem with the learning curve any more...
&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;p&gt;
&lt;script type="text/javascript"&gt;&lt;!--
google_ad_client="ca-pub-2727174828663024";
google_ad_width=468;
google_ad_height=60;
google_ad_format="468x60_as";
google_ad_type="text";
google_color_border="333333";
google_color_bg="940F04";
google_color_link="99C9FF";
google_color_url="99C9FF";
google_color_text="FFFFFF";
//--&gt;&lt;/script&gt;
&lt;script type="text/javascript"
  src="http://pagead2.googlesyndication.com/pagead/show_ads.js"&gt;
&lt;/script&gt;
&lt;/p&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/20371103-5647709871348059193?l=www.sharepoint-tips.com'/&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/sG6x7GemvAm6-9bk5chro1_muqM/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/sG6x7GemvAm6-9bk5chro1_muqM/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/sG6x7GemvAm6-9bk5chro1_muqM/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/sG6x7GemvAm6-9bk5chro1_muqM/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;</content><link rel="replies" type="application/atom+xml" href="http://www.sharepoint-tips.com/feeds/5647709871348059193/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="https://www.blogger.com/comment.g?blogID=20371103&amp;postID=5647709871348059193" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/20371103/posts/default/5647709871348059193" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/20371103/posts/default/5647709871348059193" /><link rel="alternate" type="text/html" href="http://www.sharepoint-tips.com/2009/10/training-sharepoint-2010-developers.html" title="Training SharePoint 2010 Developers" /><author><name>Ishai Sagi [SharePoint MVP]</name><uri>http://www.blogger.com/profile/15906615979471157409</uri><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd="http://schemas.google.com/g/2005" name="OpenSocialUserId" value="11018880968906117177" /></author><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-20371103.post-1460064288928214182</id><published>2009-10-19T16:35:00.000-07:00</published><updated>2009-10-19T17:36:28.846-07:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="SharePoint 2010 Beta" /><title type="text">SharePoin 2010 - Sanboxed solutions</title><content type="html">&lt;i&gt;Thanks to Scott Hillier the speaker&lt;/i&gt;

&lt;p&gt;Runs in a separate process, added to a site collection level gallery.
&lt;/p&gt;&lt;p&gt;
User code service: SPUCHostService.exe
&lt;br/&gt;Worker process : the actual process SPUCWorderProcess
&lt;br/&gt;Proxy : SPUCWorkerProcessProxy - exposing a subset of the sharepoint services. If not exposed, you cannot use it in the sandboxed solutions. This includes all the enterprise stuff - including BCS and search and so on. So do not plan to use sandbox with those objects.
&lt;/p&gt;
&lt;p&gt;
Remember - anything in a sandbox will run a lot slower than if it is not. So sandboxing has several limitations - the one mentioned above (some assemblies are not available if you are sandboxing) and the significant slowdown of the solution. This means that while deploying solutions to hosted web sites will be simpler, it also means you will slow the environment down.
&lt;/p&gt;
&lt;p&gt;
I also like the soution validation - where you can write conditions in code that will be checked when the solution is uploaded - and then allow or prevent the solution from being deployed.
&lt;/p&gt;

&lt;p&gt;Resource monitoring - you are getting information about CPU, Memory, SQL, Exceptions, critical errors, hanlders, threads and more.
&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;p&gt;
&lt;script type="text/javascript"&gt;&lt;!--
google_ad_client="ca-pub-2727174828663024";
google_ad_width=468;
google_ad_height=60;
google_ad_format="468x60_as";
google_ad_type="text";
google_color_border="333333";
google_color_bg="940F04";
google_color_link="99C9FF";
google_color_url="99C9FF";
google_color_text="FFFFFF";
//--&gt;&lt;/script&gt;
&lt;script type="text/javascript"
  src="http://pagead2.googlesyndication.com/pagead/show_ads.js"&gt;
&lt;/script&gt;
&lt;/p&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/20371103-1460064288928214182?l=www.sharepoint-tips.com'/&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/054SvsUfGmvehdDAIeY1OL31C2w/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/054SvsUfGmvehdDAIeY1OL31C2w/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/054SvsUfGmvehdDAIeY1OL31C2w/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/054SvsUfGmvehdDAIeY1OL31C2w/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;</content><link rel="replies" type="application/atom+xml" href="http://www.sharepoint-tips.com/feeds/1460064288928214182/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="https://www.blogger.com/comment.g?blogID=20371103&amp;postID=1460064288928214182" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/20371103/posts/default/1460064288928214182" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/20371103/posts/default/1460064288928214182" /><link rel="alternate" type="text/html" href="http://www.sharepoint-tips.com/2009/10/sharepoin-2010-sanboxed-solutions.html" title="SharePoin 2010 - Sanboxed solutions" /><author><name>Ishai Sagi [SharePoint MVP]</name><uri>http://www.blogger.com/profile/15906615979471157409</uri><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd="http://schemas.google.com/g/2005" name="OpenSocialUserId" value="11018880968906117177" /></author><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-20371103.post-8622883037610748558</id><published>2009-10-19T15:15:00.000-07:00</published><updated>2009-10-19T15:23:57.582-07:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="SharePoint 2010 Beta" /><category scheme="http://www.blogger.com/atom/ns#" term="Visual Studio 2010 Beta" /><title type="text">Workflows &amp; Site Templates and debugging projects in SP2010 and VS2010</title><content type="html">&lt;p&gt;I like the option to design workflows in Visio, load them and design them further in SharePoint Designer 2010 and then export that into a Visual Studio project (since only VS integrates with source control).
&lt;/p&gt;&lt;p&gt;You can save a site as template - which gives you a WSP (say good bye to STP) file that has all the objects. Visual studio then can load that WSP and show you designers to edit the WSP.&lt;br/&gt; 
&lt;/p&gt;&lt;p&gt;
When you debug a project using F5, only the project marked as startup gets deployed. The other projects in the solution do not get deployed unless you manually deploy them. And by "manually" I mean you right click them and select deploy (like with WSP builder!).
&lt;/p&gt;&lt;p&gt;
Visual studio - allows you to package, retract per project, has a special sharepoint browser that shows you the objects in a sharepoint site - much better integration.
&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;p&gt;
&lt;script type="text/javascript"&gt;&lt;!--
google_ad_client="ca-pub-2727174828663024";
google_ad_width=468;
google_ad_height=60;
google_ad_format="468x60_as";
google_ad_type="text";
google_color_border="333333";
google_color_bg="940F04";
google_color_link="99C9FF";
google_color_url="99C9FF";
google_color_text="FFFFFF";
//--&gt;&lt;/script&gt;
&lt;script type="text/javascript"
  src="http://pagead2.googlesyndication.com/pagead/show_ads.js"&gt;
&lt;/script&gt;
&lt;/p&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/20371103-8622883037610748558?l=www.sharepoint-tips.com'/&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/C5ILsiaeBvBtn8mdr_gyoI45NqY/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/C5ILsiaeBvBtn8mdr_gyoI45NqY/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/C5ILsiaeBvBtn8mdr_gyoI45NqY/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/C5ILsiaeBvBtn8mdr_gyoI45NqY/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;</content><link rel="replies" type="application/atom+xml" href="http://www.sharepoint-tips.com/feeds/8622883037610748558/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="https://www.blogger.com/comment.g?blogID=20371103&amp;postID=8622883037610748558" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/20371103/posts/default/8622883037610748558" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/20371103/posts/default/8622883037610748558" /><link rel="alternate" type="text/html" href="http://www.sharepoint-tips.com/2009/10/workflows-site-templates-and-debugging.html" title="Workflows &amp; Site Templates and debugging projects in SP2010 and VS2010" /><author><name>Ishai Sagi [SharePoint MVP]</name><uri>http://www.blogger.com/profile/15906615979471157409</uri><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd="http://schemas.google.com/g/2005" name="OpenSocialUserId" value="11018880968906117177" /></author><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-20371103.post-8092804692437293547</id><published>2009-10-19T13:28:00.000-07:00</published><updated>2009-10-19T14:28:42.970-07:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="SharePoint 2010 Beta" /><title type="text">Highlights - new in SharePoint 2010 for Developmers?</title><content type="html">&lt;ul&gt;&lt;li&gt;&lt;span style="color:#33ff33;"&gt;[Like]&lt;/span&gt;&lt;strong&gt;Web Part developer dashboard&lt;/strong&gt; (will require sts command to be activated in the public beta) . As I said, it showss what SQL queries were executed, and you can click on the query to get more information of what was going on.&lt;/li&gt;&lt;li&gt;&lt;span style="color:#33ff33;"&gt;[&lt;strong&gt;Like&lt;/strong&gt;]&lt;/span&gt;&lt;strong&gt;Visual web part development &lt;/strong&gt;&lt;/li&gt;&lt;li&gt;&lt;span style="color:#33ff33;"&gt;[Like]&lt;/span&gt;&lt;strong&gt;Sandboxed solutions&lt;/strong&gt; - you can upload a WSP to sharepoint - no STSADM command. it sits in the database - and someone with privilages can than use the code in the WSP - but it runs in a sandbox while sharepoint monitors the resources that it uses. Nothing is deployed to the file system (so you can version items properly, and you dont have to worry about multiple front end servers).
Instead of using the sharepoint dll, the sandboxed solutions use a proxy dll.
You can get logs from the proxy service that look at what the solution does.&lt;/li&gt;&lt;li&gt;&lt;span style="color:#33ff33;"&gt;[&lt;strong&gt;Like&lt;/strong&gt;]&lt;/span&gt;&lt;strong&gt;debug web parts &lt;/strong&gt;- when you "run" the solution, it automatically opens the "create page" dialog in the site you designated, so you can create a new page, and add the web part to it. Breakpoints will automatically break (because the code gets attached correctly to the processes). To do this, the VS solution is actually built and deployed before the debugging.&lt;/li&gt;&lt;li&gt;&lt;span style="color:#33ff33;"&gt;[Like]&lt;/span&gt;&lt;strong&gt;Linq for sharepoint &lt;/strong&gt;- simply add a reference to the sharepoint linq dll, and &lt;/li&gt;&lt;li&gt;&lt;span style="color:#33ff33;"&gt;[Like]&lt;/span&gt;&lt;strong&gt;.webpart files &lt;/strong&gt;are the same format as 2007 &lt;/li&gt;&lt;li&gt;&lt;strong&gt;Bussiness Connectivity Services&lt;/strong&gt; - replaces the BDC. &lt;/li&gt;&lt;ul&gt;&lt;li&gt;&lt;span style="color:#33ff33;"&gt;[&lt;strong&gt;Like&lt;/strong&gt;]&lt;/span&gt;This will have read\write.&lt;/li&gt;&lt;li&gt;&lt;span style="color:#ff0000;"&gt;[Don't Like]&lt;/span&gt;The sharepoint field types that expose the information were not upgraded, which means that a BCS column still will not allow multiselect.&lt;/li&gt;&lt;li&gt;&lt;span style="color:#33ff33;"&gt;[Like]&lt;/span&gt;Designer for the application definition in both VS2010 and SharePoint Designer 2010&lt;/li&gt;&lt;/ul&gt;&lt;li&gt;&lt;span style="color:#33ff33;"&gt;[&lt;strong&gt;Like&lt;/strong&gt;]&lt;/span&gt;Relationships between lists - you can prevent deletions or cause cascading deletions. However, no cascading inserts... but I guess this is where custom solutions come in.&lt;/li&gt;&lt;li&gt;Lookups to multiple columns&lt;/li&gt;&lt;li&gt;&lt;span style="color:#33ff33;"&gt;[Like]&lt;/span&gt;List query throttling - preventing views from showing too many items - this will be dynamic - each view evaluates on the fly and if a view is going to display more than a specific amount it can be blocked.&lt;/li&gt;&lt;li&gt;&lt;span style="color:#33ff33;"&gt;[Like]&lt;/span&gt;All views are XSLT views - not CAML (CAML can still be used) - this will make it a lot simpler to customize list definitions!&lt;/li&gt;&lt;li&gt;&lt;span style="color:#33ff33;"&gt;[&lt;strong&gt;Like&lt;/strong&gt;]&lt;/span&gt;column validation - you have a new setting for columns, where you can write a forumla (excel style) and a message to show the user if the formal does not evaluate. FANSTATIC. Shame it only supports cecrtain types of fields.&lt;/li&gt;&lt;li&gt;&lt;span style="color:#33ff33;"&gt;[&lt;strong&gt;Like&lt;/strong&gt;]&lt;/span&gt;REST API and client object model- need I say more?

Client object model will allow you to connect to a site using a "ClientContext" object, that is instanciated with a site url parameter.

REST, in case you don't know, allows you to get information from sharepoint using just URL's - and you get back an XML. So no more developing web services, now your client side code (javascript or different clients) can get the information just by building a URL, performing a http request to it, and getting back XML of the results. I have talked about this in the past in the blog about how you can do this in sharepoint 2007 - specifically &lt;a href="http://www.blogger.com/InfoPath%20form%20Services%20-%20implementing%20a%20Master-Detail%20on%20the%20web"&gt;how to get list and site information for an infopath form without using web services&lt;/a&gt; (there is a file called owssvr.dll in the _vti_bin virtual folder that gets you information from lists and sites), but in 2010 it will be a lot better integrated (and &lt;strong&gt;documented&lt;/strong&gt;), not to mention the javascripting will have proxies built in and development will be easier.

Note - when using the REST API using a .net application do not forget to set the credentials to the REST object. I wish MS would instantiate the object with the default credentials from the cache - that would save some lines.&lt;/li&gt;&lt;li&gt;&lt;span style="color:#33ff33;"&gt;[&lt;strong&gt;Like&lt;/strong&gt;]&lt;/span&gt;After Synchrounous events in the event handlers! yay! &lt;/li&gt;&lt;li&gt;&lt;span style="color:#33ff33;"&gt;[Like]&lt;/span&gt;site scoped events&lt;/li&gt;&lt;li&gt;&lt;span style="color:#33ff33;"&gt;[Like]&lt;/span&gt;Workflows - integration with Visio (interesting...)&lt;/li&gt;&lt;li&gt;&lt;strong&gt;&lt;span style="color:#33ff33;"&gt;[Like]&lt;/span&gt;Upgrading code &lt;/strong&gt;- MS provides assembly redirect for most of the sharepoint dll machines. This means that code that you wrote in 2007 has a &lt;strong&gt;good chance &lt;/strong&gt;of working in 2010!  This enables upgrades of a portal to be more smooth. It is still unclear to me how custom site definitions will be migrated.&lt;/li&gt;&lt;li&gt;&lt;strong&gt;Application life cycle management&lt;/strong&gt; - generally better with TFS - no other mention of what is better so far.&lt;/li&gt;&lt;/ul&gt;&lt;div class="blogger-post-footer"&gt;&lt;p&gt;
&lt;script type="text/javascript"&gt;&lt;!--
google_ad_client="ca-pub-2727174828663024";
google_ad_width=468;
google_ad_height=60;
google_ad_format="468x60_as";
google_ad_type="text";
google_color_border="333333";
google_color_bg="940F04";
google_color_link="99C9FF";
google_color_url="99C9FF";
google_color_text="FFFFFF";
//--&gt;&lt;/script&gt;
&lt;script type="text/javascript"
  src="http://pagead2.googlesyndication.com/pagead/show_ads.js"&gt;
&lt;/script&gt;
&lt;/p&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/20371103-8092804692437293547?l=www.sharepoint-tips.com'/&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/cWlia8T4l3fLqNC4OOZFudovW_I/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/cWlia8T4l3fLqNC4OOZFudovW_I/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/cWlia8T4l3fLqNC4OOZFudovW_I/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/cWlia8T4l3fLqNC4OOZFudovW_I/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;</content><link rel="replies" type="application/atom+xml" href="http://www.sharepoint-tips.com/feeds/8092804692437293547/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="https://www.blogger.com/comment.g?blogID=20371103&amp;postID=8092804692437293547" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/20371103/posts/default/8092804692437293547" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/20371103/posts/default/8092804692437293547" /><link rel="alternate" type="text/html" href="http://www.sharepoint-tips.com/2009/10/highlights-new-in-sharepoint-2010-for.html" title="Highlights - new in SharePoint 2010 for Developmers?" /><author><name>Ishai Sagi [SharePoint MVP]</name><uri>http://www.blogger.com/profile/15906615979471157409</uri><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd="http://schemas.google.com/g/2005" name="OpenSocialUserId" value="11018880968906117177" /></author><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-20371103.post-2189636440957644152</id><published>2009-10-19T11:44:00.000-07:00</published><updated>2009-10-19T16:45:49.906-07:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="SharePoint 2010 Beta" /><title type="text">News from the SharePoint Conference 2009 (part II)</title><content type="html">&lt;p&gt;I almost forgot - most exciting news is that November is public Beta time!

&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;p&gt;
&lt;script type="text/javascript"&gt;&lt;!--
google_ad_client="ca-pub-2727174828663024";
google_ad_width=468;
google_ad_height=60;
google_ad_format="468x60_as";
google_ad_type="text";
google_color_border="333333";
google_color_bg="940F04";
google_color_link="99C9FF";
google_color_url="99C9FF";
google_color_text="FFFFFF";
//--&gt;&lt;/script&gt;
&lt;script type="text/javascript"
  src="http://pagead2.googlesyndication.com/pagead/show_ads.js"&gt;
&lt;/script&gt;
&lt;/p&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/20371103-2189636440957644152?l=www.sharepoint-tips.com'/&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/hkGzvc1dlSto2at7IWcLL9p0euY/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/hkGzvc1dlSto2at7IWcLL9p0euY/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/hkGzvc1dlSto2at7IWcLL9p0euY/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/hkGzvc1dlSto2at7IWcLL9p0euY/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;</content><link rel="replies" type="application/atom+xml" href="http://www.sharepoint-tips.com/feeds/2189636440957644152/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="https://www.blogger.com/comment.g?blogID=20371103&amp;postID=2189636440957644152" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/20371103/posts/default/2189636440957644152" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/20371103/posts/default/2189636440957644152" /><link rel="alternate" type="text/html" href="http://www.sharepoint-tips.com/2009/10/news-from-sharepoint-conference-2009_19.html" title="News from the SharePoint Conference 2009 (part II)" /><author><name>Ishai Sagi [SharePoint MVP]</name><uri>http://www.blogger.com/profile/15906615979471157409</uri><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd="http://schemas.google.com/g/2005" name="OpenSocialUserId" value="11018880968906117177" /></author><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-20371103.post-3433202522238057493</id><published>2009-10-19T11:35:00.001-07:00</published><updated>2009-10-19T16:46:06.065-07:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="SharePoint 2010 Beta" /><title type="text">News from the SharePoint Conference 2009</title><content type="html">&lt;p&gt;Well, the show is on. The key note was done and I am sure a lot of people will start blogging like mad, so I will make an effort to contribute my thoughts.
Unfortunately, this will be in more of a "thought of a day" (or "thought of a session") style - until I get time off my feet to write complete reviews of what I saw and what I think. But stay tuned as I do have a lot to say and tell you in the next few weeks, as I travel around the world to learn what is new in sharepoint
&lt;br/&gt;
For now - some exciting tidbits:
&lt;ul&gt;&lt;li&gt;
SP2010 will support XHTML and WCAG standards&lt;/li&gt;&lt;li&gt;
SP2010 will run on Vista and Windows7 for development!&lt;/li&gt;&lt;li&gt;
SP2010 will have cross-farm content types for managing your taxonomy!&lt;/li&gt;&lt;li&gt;
The replacement for BDC will finally allow you to do what you always wanted - show external databases as if they were sharepoint lists (including CRUD opperations)
&lt;/li&gt;&lt;li&gt;
When adding a web part to the page (page is in edit mode) you get a panel showing you the loading times for different lifecycle parts of the web part, the stack trace and the SQL commands sharepoint did for the web part, and how long each one took!&lt;/li&gt;&lt;li&gt;
Web parts now have a visual editor in VS2010 - no more writing the UI in code&lt;/li&gt;&lt;li&gt;
Client side model? I can't wait for that session to start...&lt;/li&gt;
&lt;/li&gt;&lt;li&gt;

&lt;/ul&gt;

&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;p&gt;
&lt;script type="text/javascript"&gt;&lt;!--
google_ad_client="ca-pub-2727174828663024";
google_ad_width=468;
google_ad_height=60;
google_ad_format="468x60_as";
google_ad_type="text";
google_color_border="333333";
google_color_bg="940F04";
google_color_link="99C9FF";
google_color_url="99C9FF";
google_color_text="FFFFFF";
//--&gt;&lt;/script&gt;
&lt;script type="text/javascript"
  src="http://pagead2.googlesyndication.com/pagead/show_ads.js"&gt;
&lt;/script&gt;
&lt;/p&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/20371103-3433202522238057493?l=www.sharepoint-tips.com'/&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/6uScgcpwnbwx63q0YvU8CdhS8VQ/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/6uScgcpwnbwx63q0YvU8CdhS8VQ/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/6uScgcpwnbwx63q0YvU8CdhS8VQ/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/6uScgcpwnbwx63q0YvU8CdhS8VQ/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;</content><link rel="replies" type="application/atom+xml" href="http://www.sharepoint-tips.com/feeds/3433202522238057493/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="https://www.blogger.com/comment.g?blogID=20371103&amp;postID=3433202522238057493" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/20371103/posts/default/3433202522238057493" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/20371103/posts/default/3433202522238057493" /><link rel="alternate" type="text/html" href="http://www.sharepoint-tips.com/2009/10/news-from-sharepoint-conference-2009.html" title="News from the SharePoint Conference 2009" /><author><name>Ishai Sagi [SharePoint MVP]</name><uri>http://www.blogger.com/profile/15906615979471157409</uri><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd="http://schemas.google.com/g/2005" name="OpenSocialUserId" value="11018880968906117177" /></author><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-20371103.post-427392888800713163</id><published>2009-10-11T22:35:00.000-07:00</published><updated>2009-10-11T22:38:31.555-07:00</updated><title type="text">Selected pictures view does not work in Citrix</title><content type="html">&lt;p&gt;
I wonder if anyone else can replicate this. My customer uses citrix to allow remote people to log in and use the intranet. When logged in, using IE8 through citrix, the "selected pictures" view in picture libraries doesnt work.&lt;br/&gt;
You go to a picture library, select a few pictures and then in the view selector you select the "selected pictures" view, and you get a view that shows you all the pictures, and does not show the checkboxes (some style issues there).
&lt;br/&gt;
This is happening with a non-customized sharepoint site, and when you access the same list from a desktop on the network (so, not through citrix) there is no problem.

&lt;br/&gt;
Anyone seen this? anyone solved this?
&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;p&gt;
&lt;script type="text/javascript"&gt;&lt;!--
google_ad_client="ca-pub-2727174828663024";
google_ad_width=468;
google_ad_height=60;
google_ad_format="468x60_as";
google_ad_type="text";
google_color_border="333333";
google_color_bg="940F04";
google_color_link="99C9FF";
google_color_url="99C9FF";
google_color_text="FFFFFF";
//--&gt;&lt;/script&gt;
&lt;script type="text/javascript"
  src="http://pagead2.googlesyndication.com/pagead/show_ads.js"&gt;
&lt;/script&gt;
&lt;/p&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/20371103-427392888800713163?l=www.sharepoint-tips.com'/&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/dM69-w63-V_oO0sGPG5n9b2pdlY/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/dM69-w63-V_oO0sGPG5n9b2pdlY/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/dM69-w63-V_oO0sGPG5n9b2pdlY/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/dM69-w63-V_oO0sGPG5n9b2pdlY/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;</content><link rel="replies" type="application/atom+xml" href="http://www.sharepoint-tips.com/feeds/427392888800713163/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="https://www.blogger.com/comment.g?blogID=20371103&amp;postID=427392888800713163" title="1 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/20371103/posts/default/427392888800713163" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/20371103/posts/default/427392888800713163" /><link rel="alternate" type="text/html" href="http://www.sharepoint-tips.com/2009/10/selected-pictures-view-does-not-work-in.html" title="Selected pictures view does not work in Citrix" /><author><name>Ishai Sagi [SharePoint MVP]</name><uri>http://www.blogger.com/profile/15906615979471157409</uri><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd="http://schemas.google.com/g/2005" name="OpenSocialUserId" value="11018880968906117177" /></author><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-20371103.post-4803370070886727187</id><published>2009-09-16T18:24:00.000-07:00</published><updated>2009-09-16T18:26:41.186-07:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="Error Messages" /><title type="text">Retrieving the COM class factory for component with CLSID {3D42CCB1-4665-4620-92A3-478F47389230} failed</title><content type="html">&lt;p&gt;
A code I was running against user profiles failed with the error:
"&lt;i&gt;Retrieving the COM class factory for component with CLSID {3D42CCB1-4665-4620-92A3-478F47389230} failed due to the following error: 80070422.&lt;/i&gt;"
&lt;br/&gt;The reason was that the search service was disabled on the server, and since adding user profile properties that are indexed requires the search service, this error is understandable (although not very user friendly).

&lt;br/&gt; solution is obvious - start the search service.
&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;p&gt;
&lt;script type="text/javascript"&gt;&lt;!--
google_ad_client="ca-pub-2727174828663024";
google_ad_width=468;
google_ad_height=60;
google_ad_format="468x60_as";
google_ad_type="text";
google_color_border="333333";
google_color_bg="940F04";
google_color_link="99C9FF";
google_color_url="99C9FF";
google_color_text="FFFFFF";
//--&gt;&lt;/script&gt;
&lt;script type="text/javascript"
  src="http://pagead2.googlesyndication.com/pagead/show_ads.js"&gt;
&lt;/script&gt;
&lt;/p&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/20371103-4803370070886727187?l=www.sharepoint-tips.com'/&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/7qeSDxccVuxSsndRJ2vUk-6PoCE/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/7qeSDxccVuxSsndRJ2vUk-6PoCE/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/7qeSDxccVuxSsndRJ2vUk-6PoCE/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/7qeSDxccVuxSsndRJ2vUk-6PoCE/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;</content><link rel="replies" type="application/atom+xml" href="http://www.sharepoint-tips.com/feeds/4803370070886727187/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="https://www.blogger.com/comment.g?blogID=20371103&amp;postID=4803370070886727187" title="1 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/20371103/posts/default/4803370070886727187" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/20371103/posts/default/4803370070886727187" /><link rel="alternate" type="text/html" href="http://www.sharepoint-tips.com/2009/09/retrieving-com-class-factory-for.html" title="Retrieving the COM class factory for component with CLSID {3D42CCB1-4665-4620-92A3-478F47389230} failed" /><author><name>Ishai Sagi [SharePoint MVP]</name><uri>http://www.blogger.com/profile/15906615979471157409</uri><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd="http://schemas.google.com/g/2005" name="OpenSocialUserId" value="11018880968906117177" /></author><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-20371103.post-3381131123557752210</id><published>2009-08-23T23:49:00.000-07:00</published><updated>2009-08-23T23:51:58.360-07:00</updated><title type="text">Tech Support Cheat Sheet</title><content type="html">&lt;p&gt;
I actually did something similar when I was head of Microsoft Office Support in Israel in 2002 - regardless, if you are like me - the "computer expert" of the family, just email this to all your relatives and relax.&lt;br/&gt;&lt;br/&gt;
&lt;a href="http://xkcd.com/627/" target="_blank"&gt;Tech Support Cheat Sheet&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://xkcd.com/627/"&gt;&lt;img border="-" src="http://imgs.xkcd.com/comics/tech_support_cheat_sheet.png" /&gt; &lt;/a&gt;
&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;p&gt;
&lt;script type="text/javascript"&gt;&lt;!--
google_ad_client="ca-pub-2727174828663024";
google_ad_width=468;
google_ad_height=60;
google_ad_format="468x60_as";
google_ad_type="text";
google_color_border="333333";
google_color_bg="940F04";
google_color_link="99C9FF";
google_color_url="99C9FF";
google_color_text="FFFFFF";
//--&gt;&lt;/script&gt;
&lt;script type="text/javascript"
  src="http://pagead2.googlesyndication.com/pagead/show_ads.js"&gt;
&lt;/script&gt;
&lt;/p&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/20371103-3381131123557752210?l=www.sharepoint-tips.com'/&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/h--Ph_jXf124ZHWccjGzeoxHdPY/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/h--Ph_jXf124ZHWccjGzeoxHdPY/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/h--Ph_jXf124ZHWccjGzeoxHdPY/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/h--Ph_jXf124ZHWccjGzeoxHdPY/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;</content><link rel="replies" type="application/atom+xml" href="http://www.sharepoint-tips.com/feeds/3381131123557752210/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="https://www.blogger.com/comment.g?blogID=20371103&amp;postID=3381131123557752210" title="1 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/20371103/posts/default/3381131123557752210" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/20371103/posts/default/3381131123557752210" /><link rel="alternate" type="text/html" href="http://www.sharepoint-tips.com/2009/08/tech-support-cheat-sheet.html" title="Tech Support Cheat Sheet" /><author><name>Ishai Sagi [SharePoint MVP]</name><uri>http://www.blogger.com/profile/15906615979471157409</uri><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd="http://schemas.google.com/g/2005" name="OpenSocialUserId" value="11018880968906117177" /></author><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-20371103.post-7400677979344041570</id><published>2009-08-19T20:57:00.000-07:00</published><updated>2009-08-19T21:07:16.159-07:00</updated><title type="text">Web Parts – a developer and architect’s guide</title><content type="html">&lt;p&gt;
Below are the slides from the presentation that I did in the SharePoint Saturday events in Sydney and Adelaide in the last two weeks. A lot of people asked me for it, but I am not sure how much help it can be to you if you haven't been there- since my presentations are more me talking and running demos, and less information from slides (I do love the sound of my own voice...).&lt;br/&gt;
&lt;br/&gt;If you still want to, here are the slides:

&lt;/p&gt;
&lt;p&gt;

&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_ZLr3wvXiUTE/SozKZ6kFoqI/AAAAAAAAD3A/i2KtHhX7bm4/s1600-h/Slide1.JPG"&gt;&lt;img style="cursor:pointer; cursor:hand;width: 400px; height: 300px;" src="http://3.bp.blogspot.com/_ZLr3wvXiUTE/SozKZ6kFoqI/AAAAAAAAD3A/i2KtHhX7bm4/s400/Slide1.JPG" border="0" alt=""id="BLOGGER_PHOTO_ID_5371891002112320162" /&gt;&lt;/a&gt;&lt;br/&gt;&lt;br/&gt;


&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_ZLr3wvXiUTE/SozKaLVXxZI/AAAAAAAAD3I/XbGzroC8_v8/s1600-h/Slide2.JPG"&gt;&lt;img style="cursor:pointer; cursor:hand;width: 400px; height: 300px;" src="http://2.bp.blogspot.com/_ZLr3wvXiUTE/SozKaLVXxZI/AAAAAAAAD3I/XbGzroC8_v8/s400/Slide2.JPG" border="0" alt=""id="BLOGGER_PHOTO_ID_5371891006613996946" /&gt;&lt;/a&gt;&lt;br/&gt;&lt;br/&gt;

&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_ZLr3wvXiUTE/SozKaiOAjcI/AAAAAAAAD3Q/vY0fDfCSMpo/s1600-h/Slide3.JPG"&gt;&lt;img style="cursor:pointer; cursor:hand;width: 400px; height: 300px;" src="http://1.bp.blogspot.com/_ZLr3wvXiUTE/SozKaiOAjcI/AAAAAAAAD3Q/vY0fDfCSMpo/s400/Slide3.JPG" border="0" alt=""id="BLOGGER_PHOTO_ID_5371891012757130690" /&gt;&lt;/a&gt;&lt;br/&gt;&lt;br/&gt;

&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_ZLr3wvXiUTE/SozKa4DCSKI/AAAAAAAAD3Y/DZmSpFlV42c/s1600-h/Slide4.JPG"&gt;&lt;img style="cursor:pointer; cursor:hand;width: 400px; height: 300px;" src="http://4.bp.blogspot.com/_ZLr3wvXiUTE/SozKa4DCSKI/AAAAAAAAD3Y/DZmSpFlV42c/s400/Slide4.JPG" border="0" alt=""id="BLOGGER_PHOTO_ID_5371891018616686754" /&gt;&lt;/a&gt;&lt;br/&gt;&lt;br/&gt;

&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_ZLr3wvXiUTE/SozKbbHPRPI/AAAAAAAAD3g/1hPRklIejco/s1600-h/Slide5.JPG"&gt;&lt;img style="cursor:pointer; cursor:hand;width: 400px; height: 300px;" src="http://3.bp.blogspot.com/_ZLr3wvXiUTE/SozKbbHPRPI/AAAAAAAAD3g/1hPRklIejco/s400/Slide5.JPG" border="0" alt=""id="BLOGGER_PHOTO_ID_5371891028029555954" /&gt;&lt;/a&gt;&lt;br/&gt;&lt;br/&gt;


&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_ZLr3wvXiUTE/SozKpW0D2sI/AAAAAAAAD3o/pzgbKKSQ6o0/s1600-h/Slide6.JPG"&gt;&lt;img style="cursor:pointer; cursor:hand;width: 400px; height: 300px;" src="http://3.bp.blogspot.com/_ZLr3wvXiUTE/SozKpW0D2sI/AAAAAAAAD3o/pzgbKKSQ6o0/s400/Slide6.JPG" border="0" alt=""id="BLOGGER_PHOTO_ID_5371891267393542850" /&gt;&lt;/a&gt;

&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_ZLr3wvXiUTE/SozKp_0pU3I/AAAAAAAAD3w/yZSG05bDDPQ/s1600-h/Slide7.JPG"&gt;&lt;img style="cursor:pointer; cursor:hand;width: 400px; height: 300px;" src="http://3.bp.blogspot.com/_ZLr3wvXiUTE/SozKp_0pU3I/AAAAAAAAD3w/yZSG05bDDPQ/s400/Slide7.JPG" border="0" alt=""id="BLOGGER_PHOTO_ID_5371891278401852274" /&gt;&lt;/a&gt;&lt;br/&gt;&lt;br/&gt;

&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_ZLr3wvXiUTE/SozKqVWZbCI/AAAAAAAAD34/pLG1dDlL7WI/s1600-h/Slide8.JPG"&gt;&lt;img style="cursor:pointer; cursor:hand;width: 400px; height: 300px;" src="http://1.bp.blogspot.com/_ZLr3wvXiUTE/SozKqVWZbCI/AAAAAAAAD34/pLG1dDlL7WI/s400/Slide8.JPG" border="0" alt=""id="BLOGGER_PHOTO_ID_5371891284180560930" /&gt;&lt;/a&gt;&lt;br/&gt;&lt;br/&gt;


&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_ZLr3wvXiUTE/SozKqy0vy0I/AAAAAAAAD4A/Yq7c_HLmqww/s1600-h/Slide9.JPG"&gt;&lt;img style="cursor:pointer; cursor:hand;width: 400px; height: 300px;" src="http://1.bp.blogspot.com/_ZLr3wvXiUTE/SozKqy0vy0I/AAAAAAAAD4A/Yq7c_HLmqww/s400/Slide9.JPG" border="0" alt=""id="BLOGGER_PHOTO_ID_5371891292092484418" /&gt;&lt;/a&gt;&lt;br/&gt;&lt;br/&gt;
&lt;/p&gt;
&lt;p&gt;Oh - and credit to &lt;a href="http://www.fernandof.wordpress.com/"&gt;Fernando Felman&lt;/a&gt; for the wonderful list of links at the end. Here they are if you want to copy them:
&lt;br/&gt;&lt;a href="http://en.wikipedia.org/wiki/ACID"&gt;http://en.wikipedia.org/wiki/ACID&lt;/a&gt;
&lt;br/&gt;&lt;a href="http://www.codeplex.com/AppArchGuide"&gt;http://www.codeplex.com/AppArchGuide&lt;/a&gt;
&lt;br/&gt;&lt;a href="http://www.codeplex.com/AppArch"&gt;http://www.codeplex.com/AppArch&lt;/a&gt;
&lt;br/&gt;&lt;a href="http://www.martinfowler.com/"&gt;http://www.martinfowler.com/&lt;/a&gt;

&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;p&gt;
&lt;script type="text/javascript"&gt;&lt;!--
google_ad_client="ca-pub-2727174828663024";
google_ad_width=468;
google_ad_height=60;
google_ad_format="468x60_as";
google_ad_type="text";
google_color_border="333333";
google_color_bg="940F04";
google_color_link="99C9FF";
google_color_url="99C9FF";
google_color_text="FFFFFF";
//--&gt;&lt;/script&gt;
&lt;script type="text/javascript"
  src="http://pagead2.googlesyndication.com/pagead/show_ads.js"&gt;
&lt;/script&gt;
&lt;/p&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/20371103-7400677979344041570?l=www.sharepoint-tips.com'/&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/ogJ5zEltHWfoi1_FC87e9cQJxQg/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/ogJ5zEltHWfoi1_FC87e9cQJxQg/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/ogJ5zEltHWfoi1_FC87e9cQJxQg/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/ogJ5zEltHWfoi1_FC87e9cQJxQg/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;</content><link rel="replies" type="application/atom+xml" href="http://www.sharepoint-tips.com/feeds/7400677979344041570/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="https://www.blogger.com/comment.g?blogID=20371103&amp;postID=7400677979344041570" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/20371103/posts/default/7400677979344041570" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/20371103/posts/default/7400677979344041570" /><link rel="alternate" type="text/html" href="http://www.sharepoint-tips.com/2009/08/web-parts-developer-and-architects.html" title="Web Parts – a developer and architect’s guide" /><author><name>Ishai Sagi [SharePoint MVP]</name><uri>http://www.blogger.com/profile/15906615979471157409</uri><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd="http://schemas.google.com/g/2005" name="OpenSocialUserId" value="11018880968906117177" /></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://3.bp.blogspot.com/_ZLr3wvXiUTE/SozKZ6kFoqI/AAAAAAAAD3A/i2KtHhX7bm4/s72-c/Slide1.JPG" height="72" width="72" /><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-20371103.post-9150823046940377187</id><published>2009-08-18T01:05:00.000-07:00</published><updated>2009-08-18T01:08:16.558-07:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="Windows 2008 R2 Server" /><title type="text">Windows 2008 R2 goodness - adding sharepoint folders to a library</title><content type="html">&lt;p&gt;Just a heads up to what you can expect when you upgrade to Windows Server 2008 R2 (aside from all the technical things like virtualization improvements):
&lt;/p&gt;
&lt;p&gt;Win2008R2 is also known as “&lt;strong&gt;Windows 7 Server&lt;/strong&gt;”, since the UI is windows 7 (unlike windows 2008 which was vista).&lt;/p&gt;
&lt;p&gt;
This means we can create “libraries” – which are virtual folders which replace the vista “search folder” with much more options. &lt;/p&gt;
&lt;p&gt;
An example is shown below – I created a virtual folder called “sharepoint files” and added the 12 hive and the office servers folders as well as the “logs” folder – and now I have an easy way to get to all three of them in windows explorer:
&lt;a href="http://4.bp.blogspot.com/_ZLr3wvXiUTE/SophOd9OZtI/AAAAAAAAD24/8btPD1y0Ppc/s1600-h/Blog-+libraries+in+win2008r2.jpg"&gt;&lt;img style="WIDTH: 400px; HEIGHT: 277px; CURSOR: hand" id="BLOGGER_PHOTO_ID_5371212406780225234" border="0" alt="" src="http://4.bp.blogspot.com/_ZLr3wvXiUTE/SophOd9OZtI/AAAAAAAAD24/8btPD1y0Ppc/s400/Blog-+libraries+in+win2008r2.jpg" /&gt;&lt;/a&gt;

&lt;br/&gt;Bliss. Oh - can you see how I named my 2008 R2 machine?

&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;p&gt;
&lt;script type="text/javascript"&gt;&lt;!--
google_ad_client="ca-pub-2727174828663024";
google_ad_width=468;
google_ad_height=60;
google_ad_format="468x60_as";
google_ad_type="text";
google_color_border="333333";
google_color_bg="940F04";
google_color_link="99C9FF";
google_color_url="99C9FF";
google_color_text="FFFFFF";
//--&gt;&lt;/script&gt;
&lt;script type="text/javascript"
  src="http://pagead2.googlesyndication.com/pagead/show_ads.js"&gt;
&lt;/script&gt;
&lt;/p&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/20371103-9150823046940377187?l=www.sharepoint-tips.com'/&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/Bs8EhHuOuCFqXrlxIa7Uyai0yxQ/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/Bs8EhHuOuCFqXrlxIa7Uyai0yxQ/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/Bs8EhHuOuCFqXrlxIa7Uyai0yxQ/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/Bs8EhHuOuCFqXrlxIa7Uyai0yxQ/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;</content><link rel="replies" type="application/atom+xml" href="http://www.sharepoint-tips.com/feeds/9150823046940377187/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="https://www.blogger.com/comment.g?blogID=20371103&amp;postID=9150823046940377187" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/20371103/posts/default/9150823046940377187" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/20371103/posts/default/9150823046940377187" /><link rel="alternate" type="text/html" href="http://www.sharepoint-tips.com/2009/08/windows-2008-r2-goodness-adding.html" title="Windows 2008 R2 goodness - adding sharepoint folders to a library" /><author><name>Ishai Sagi [SharePoint MVP]</name><uri>http://www.blogger.com/profile/15906615979471157409</uri><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd="http://schemas.google.com/g/2005" name="OpenSocialUserId" value="11018880968906117177" /></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://4.bp.blogspot.com/_ZLr3wvXiUTE/SophOd9OZtI/AAAAAAAAD24/8btPD1y0Ppc/s72-c/Blog-+libraries+in+win2008r2.jpg" height="72" width="72" /><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-20371103.post-2320860256142592561</id><published>2009-08-02T23:27:00.000-07:00</published><updated>2009-08-02T23:52:14.849-07:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="Thesaurus" /><category scheme="http://www.blogger.com/atom/ns#" term="Macro" /><category scheme="http://www.blogger.com/atom/ns#" term="Search Customization" /><title type="text">Creating Thesaurus files</title><content type="html">&lt;p&gt;
I had a look at the excel file that &lt;a target="_blank" href="http://blogs.officezealot.com/mauro/archive/2008/12/04/21280.aspx"&gt;Mauro Cardarelli wrote&lt;/a&gt; as a tool to generate thesaurus plans. While the tool is nice, I was dissapointed it did not include a facility to load an existing XML file and analyze it to see if it contains faults such as duplicates.
&lt;/p&gt;
&lt;p&gt;So what I did was write my own macro that loads a thesaurus file into Mauro's excel spreadsheet. The macro only loads expansions (as his spreadsheet does not deal with replacements) - but you can easily change it to load replacements if you want.
&lt;/p&gt;
&lt;p&gt;To use this macro, open Mauro's file, and open the visual basic window (alt-f11) and paste the procedure at the bottom of the "sheet1" module. To run it, either click the "run macro" button in excel, or from the VBA environment, hit F5 when the cursor is in the procedure. The macro will ask you for the path of the file, and will load it and populate the excel file.
&lt;/p&gt;
&lt;DIV&gt;
&lt;PRE&gt;
Sub LoadThesaurusFile()
    Dim total As Integer
    total = 0
    Dim thesaurusFile As New DOMDocument
    Dim path As String
    path = InputBox("Path to the Thesaurus xml file", , ActiveWorkbook.path + "\thesaurus.xml")
    If (path = "") Then Exit Sub
    
    thesaurusFile.async = False
    thesaurusFile.validateOnParse = False
    'to avoid errors because of a thesaurus schema file, we will load the file as a text file, and then remove the schema reference
    Dim fs As TextStream
    Dim fso As New FileSystemObject
    Set fs = fso.OpenTextFile(path, ForReading, False, TristateUseDefault)
    s = fs.ReadAll
    s = Replace(s, "xmlns=""x-schema:tsSchema.xml""", "")

    Dim sht As Worksheet
    Set sht = ActiveSheet
    If (thesaurusFile.LoadXML(s)) Then
        Dim expansions As IXMLDOMNodeList
        Dim expansion As IXMLDOMNode
        Set expansions = thesaurusFile.FirstChild.SelectNodes("//expansion")
        'start from row 4
        Dim iCurrentRow As Integer
        iCurrentRow = 4
        'loop over the expansion tags, and populate the spreadsheet
        For i = 0 To expansions.Length - 1
            Dim iCurrentColumn As Integer
            Dim subs As IXMLDOMNodeList
            'load current exapnsion
            Set expansion = expansions.Item(i)
            'load the expansion subs
            Set subs = expansion.SelectNodes("sub")
            For iCurrentColumn = 0 To subs.Length - 1
                sht.Cells(iCurrentRow, iCurrentColumn + 1) = subs.Item(iCurrentColumn).Text
                total = total + 1
            Next iCurrentColumn
            iCurrentRow = iCurrentRow + 1
        Next i
        MsgBox ("Total entries: " &amp; total)
   Else
    MsgBox ("Error loading the XML file: " + x.parseError.reason + vbCrLf + "Source:" + x.parseError.srcText + vbCrLf + "Link:" &amp; x.parseError.Line)
   End If
   Set thesaurusFile = Nothing
   
End Sub&lt;/PRE&gt;
&lt;/DIV&gt;&lt;div class="blogger-post-footer"&gt;&lt;p&gt;
&lt;script type="text/javascript"&gt;&lt;!--
google_ad_client="ca-pub-2727174828663024";
google_ad_width=468;
google_ad_height=60;
google_ad_format="468x60_as";
google_ad_type="text";
google_color_border="333333";
google_color_bg="940F04";
google_color_link="99C9FF";
google_color_url="99C9FF";
google_color_text="FFFFFF";
//--&gt;&lt;/script&gt;
&lt;script type="text/javascript"
  src="http://pagead2.googlesyndication.com/pagead/show_ads.js"&gt;
&lt;/script&gt;
&lt;/p&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/20371103-2320860256142592561?l=www.sharepoint-tips.com'/&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/if3Vy6F27RhC5AnwWru9i-X9J4c/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/if3Vy6F27RhC5AnwWru9i-X9J4c/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/if3Vy6F27RhC5AnwWru9i-X9J4c/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/if3Vy6F27RhC5AnwWru9i-X9J4c/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;</content><link rel="replies" type="application/atom+xml" href="http://www.sharepoint-tips.com/feeds/2320860256142592561/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="https://www.blogger.com/comment.g?blogID=20371103&amp;postID=2320860256142592561" title="1 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/20371103/posts/default/2320860256142592561" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/20371103/posts/default/2320860256142592561" /><link rel="alternate" type="text/html" href="http://www.sharepoint-tips.com/2009/08/creating-thesaurus-files.html" title="Creating Thesaurus files" /><author><name>Ishai Sagi [SharePoint MVP]</name><uri>http://www.blogger.com/profile/15906615979471157409</uri><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd="http://schemas.google.com/g/2005" name="OpenSocialUserId" value="11018880968906117177" /></author><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-20371103.post-1828636613226587688</id><published>2009-07-19T22:06:00.000-07:00</published><updated>2009-07-19T22:12:23.617-07:00</updated><title type="text">In memory of a great sharepoint guy</title><content type="html">&lt;p&gt;
Hi everyone.&lt;br/&gt;
If you followed this blog last year, you would have seen the blog post about Lee Marriage's death. Lee was a collegue who helped run the SharePoint user group in Sydney, and had a very useful sharepoint blog, and was a great guy all around.
&lt;br/&gt;
Lee died last year in the Sydney "City to Surf" run from a heart attack. This year his friends are all going to do the run (or in some cases the walk) in his memory - while raising money for the Heart Research Institute.
&lt;br/&gt;
If you can, please sponsor us on the &lt;a href="http://www.everydayhero.com.au/lee_marriage_groupies"&gt;everydayhero site&lt;/a&gt;: &lt;a href="http://www.everydayhero.com.au/lee_marriage_groupies"&gt;http://www.everydayhero.com.au/lee_marriage_groupies&lt;/a&gt; and donate a bit of money. I don't really care if you sponsor me specifically or any other member of the team.
&lt;br/&gt;
thanks!
&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;p&gt;
&lt;script type="text/javascript"&gt;&lt;!--
google_ad_client="ca-pub-2727174828663024";
google_ad_width=468;
google_ad_height=60;
google_ad_format="468x60_as";
google_ad_type="text";
google_color_border="333333";
google_color_bg="940F04";
google_color_link="99C9FF";
google_color_url="99C9FF";
google_color_text="FFFFFF";
//--&gt;&lt;/script&gt;
&lt;script type="text/javascript"
  src="http://pagead2.googlesyndication.com/pagead/show_ads.js"&gt;
&lt;/script&gt;
&lt;/p&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/20371103-1828636613226587688?l=www.sharepoint-tips.com'/&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/hxv0IVuuiLv5deAISKrLQ6D3lVk/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/hxv0IVuuiLv5deAISKrLQ6D3lVk/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/hxv0IVuuiLv5deAISKrLQ6D3lVk/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/hxv0IVuuiLv5deAISKrLQ6D3lVk/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;</content><link rel="replies" type="application/atom+xml" href="http://www.sharepoint-tips.com/feeds/1828636613226587688/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="https://www.blogger.com/comment.g?blogID=20371103&amp;postID=1828636613226587688" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/20371103/posts/default/1828636613226587688" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/20371103/posts/default/1828636613226587688" /><link rel="alternate" type="text/html" href="http://www.sharepoint-tips.com/2009/07/in-memory-of-great-sharepoint-guy.html" title="In memory of a great sharepoint guy" /><author><name>Ishai Sagi [SharePoint MVP]</name><uri>http://www.blogger.com/profile/15906615979471157409</uri><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd="http://schemas.google.com/g/2005" name="OpenSocialUserId" value="11018880968906117177" /></author><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-20371103.post-8137406716979450458</id><published>2009-07-12T22:02:00.000-07:00</published><updated>2009-07-12T22:07:08.829-07:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="Code Sample" /><title type="text">Setting the navigation options for a meeting workspace</title><content type="html">&lt;p&gt;This is just wierd. I had to change the navigation options for a meeting workspace using code on a MOSS farm. The meeting workspaces were all under a publishing site, with the publishing feature turned on, so the option to inherit the navigation from the parent site is available in the UI.
&lt;br/&gt;
However, there is no option to set it in the API.&lt;br/&gt;
When dealing with publishing sites, you can easily set it by using the PublishingWeb object instead of the SPWeb object - but using PublishingWeb.IsPublishingWeb on the event workspace returns false.
&lt;br/&gt;So I had a look at the code that runs when you click OK on the navigation settings page - and guess what? Microsoft doesnt check if the site is a publishing web or not - they just assume it is, and set the properties! So I did the same, and the code runs great. It doesnt matter that it is not a publishing web.&lt;br/&gt;&lt;strong&gt;Code:&lt;/strong&gt;&lt;br/&gt;
PublishingWeb pubWeb = PublishingWeb.GetPublishingWeb(web);
pubWeb.InheritGlobalNavigation = true;

&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;p&gt;
&lt;script type="text/javascript"&gt;&lt;!--
google_ad_client="ca-pub-2727174828663024";
google_ad_width=468;
google_ad_height=60;
google_ad_format="468x60_as";
google_ad_type="text";
google_color_border="333333";
google_color_bg="940F04";
google_color_link="99C9FF";
google_color_url="99C9FF";
google_color_text="FFFFFF";
//--&gt;&lt;/script&gt;
&lt;script type="text/javascript"
  src="http://pagead2.googlesyndication.com/pagead/show_ads.js"&gt;
&lt;/script&gt;
&lt;/p&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/20371103-8137406716979450458?l=www.sharepoint-tips.com'/&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/lxvZ9q0qlTHVgXvafzuH8byo9Jg/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/lxvZ9q0qlTHVgXvafzuH8byo9Jg/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/lxvZ9q0qlTHVgXvafzuH8byo9Jg/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/lxvZ9q0qlTHVgXvafzuH8byo9Jg/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;</content><link rel="replies" type="application/atom+xml" href="http://www.sharepoint-tips.com/feeds/8137406716979450458/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="https://www.blogger.com/comment.g?blogID=20371103&amp;postID=8137406716979450458" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/20371103/posts/default/8137406716979450458" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/20371103/posts/default/8137406716979450458" /><link rel="alternate" type="text/html" href="http://www.sharepoint-tips.com/2009/07/setting-navigation-options-for-meeting.html" title="Setting the navigation options for a meeting workspace" /><author><name>Ishai Sagi [SharePoint MVP]</name><uri>http://www.blogger.com/profile/15906615979471157409</uri><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd="http://schemas.google.com/g/2005" name="OpenSocialUserId" value="11018880968906117177" /></author><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-20371103.post-9138623311136553311</id><published>2009-07-12T16:30:00.000-07:00</published><updated>2009-07-12T23:14:53.775-07:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="events" /><title type="text">Australian IT people - Want to learn about sharepoint?</title><content type="html">&lt;p&gt;SharePoint Saturday is coming to Sydney&lt;br/&gt;This upcoming event (the 8th of August 2009 at the Microsoft Sydney Office) is going to be an awesome event with a lot of sessions - all about sharepoint. Think TechED - but only for SharePoint.

&lt;br/&gt;&lt;br/&gt;Join SharePoint architects, developers, and other professionals that work with Microsoft Office SharePoint Server 2007 for ‘SharePoint Saturday’, on Saturday, August 8th, 2009.  SharePoint Saturday will be an educational, informative &amp; lively day filled with sessions from respected SharePoint professionals &amp; MVPs, covering a wide variety of SharePoint-orientated topics.  SharePoint Saturday is &lt;strong&gt;FREE&lt;/strong&gt;, open to the public and is your local chance to immerse yourself in SharePoint!  
 

&lt;br/&gt;
It is free, and there are many prizes (including my &lt;a href="http://www.informit.com/pwclick.ashx?r=http%3A//www.informit.com/title/0672330504&amp;i=0672330504&amp;w=514f00e41700"&gt;book&lt;/a&gt;), and if you come you can hear me talk about developing web parts - &lt;a href="http://www.sharepointsaturday.org/sydney/meetings/8/Howtobuildrealworldwebparts.aspx"&gt;General Meeting: How to build real world web parts&lt;/a&gt; where I will demonstrate how to build a web part for SharePoint from scratch, and then will demonstrate some of the most elusive best practices that web part developers need to know.

&lt;/p&gt;
&lt;p&gt;
&lt;b&gt;Other sessions available are:&lt;/b&gt;&lt;br/&gt;
Building a Bulletproof SharePoint Farm; Disaster Recovery and High Availability for SharePoint&lt;br/&gt;
What SharePoint Administrators should know about SQL Server&lt;br/&gt;
Building Process Driven Applications leveraging SharePoint&lt;br/&gt;
ASP.Net and SharePoint&lt;br/&gt;
Content Deployment Bootcamp&lt;br/&gt;
Blooming SharePoint (SharePoint UI customizations)&lt;br/&gt;
Geographically Distributed Deployments for SharePoint&lt;br/&gt;
SharePoint as a platform for enterprise mash-ups&lt;br/&gt;
SharePoint Document imaging - The paper-laden office is here to stay&lt;br/&gt;
MOSS 2007 – Architecture best practices from the field&lt;br/&gt;
SharePoint Designer: Working with the DataView Web Part&lt;br/&gt;
Leveraging SharePoint Web Services&lt;br/&gt;
&lt;/p&gt;
&lt;p&gt;
This whole event was organized by my friend Brian Farnhill - who has a &lt;a href="http://blog.brianfarnhill.com/" target="_blank"&gt;great SharePoint developer blog&lt;/a&gt; that you should check out if you didn't already, and by fellow MVP &lt;a href="http://msmvps.com/blogs/benwalters"&gt;Ben Walters&lt;/a&gt; -  also a great guy all around.
&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;p&gt;
&lt;script type="text/javascript"&gt;&lt;!--
google_ad_client="ca-pub-2727174828663024";
google_ad_width=468;
google_ad_height=60;
google_ad_format="468x60_as";
google_ad_type="text";
google_color_border="333333";
google_color_bg="940F04";
google_color_link="99C9FF";
google_color_url="99C9FF";
google_color_text="FFFFFF";
//--&gt;&lt;/script&gt;
&lt;script type="text/javascript"
  src="http://pagead2.googlesyndication.com/pagead/show_ads.js"&gt;
&lt;/script&gt;
&lt;/p&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/20371103-9138623311136553311?l=www.sharepoint-tips.com'/&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/T9Yn8FPQOQDQMhm7TZOsUBZY4Og/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/T9Yn8FPQOQDQMhm7TZOsUBZY4Og/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/T9Yn8FPQOQDQMhm7TZOsUBZY4Og/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/T9Yn8FPQOQDQMhm7TZOsUBZY4Og/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;</content><link rel="replies" type="application/atom+xml" href="http://www.sharepoint-tips.com/feeds/9138623311136553311/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="https://www.blogger.com/comment.g?blogID=20371103&amp;postID=9138623311136553311" title="2 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/20371103/posts/default/9138623311136553311" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/20371103/posts/default/9138623311136553311" /><link rel="alternate" type="text/html" href="http://www.sharepoint-tips.com/2009/07/australians-it-want-to-learn-about.html" title="Australian IT people - Want to learn about sharepoint?" /><author><name>Ishai Sagi [SharePoint MVP]</name><uri>http://www.blogger.com/profile/15906615979471157409</uri><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd="http://schemas.google.com/g/2005" name="OpenSocialUserId" value="11018880968906117177" /></author><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-20371103.post-4985880945097533184</id><published>2009-06-24T18:34:00.000-07:00</published><updated>2009-06-24T21:25:02.557-07:00</updated><title type="text">Error message when checking in a document from office 2003</title><content type="html">&lt;p&gt;In a custom solution I recently worked on we were receiving an error from office applications when we tried to check in documents from within office 2003 applications like word or excel.
The error was:
"Cannont perform this operation. The file is no longer checked out or has been deleted"


After a lot of digging, I found that the fault was in the custom content types that we deployed as features. The problem was that the person who wrote the CAML for the content types that inherit from the "Document" content type thought (understandably so) that it is enough to specify only the fields that the custom content type adds on top of the built in column. This meant that the content type did not have the right columns for file name for example. This was ok in the web UI or in office 2007 - but office 2003 must have some hard coded references that it missed, and it kept throwing errors.


The solution was simple - add a reference to the built-in columns in each content type - even if it does inherit from the document content type. The following are the columns I had to add to solve the issue:
&lt;br/&gt;
&lt;div&gt;
&amp;lt;!-- out of the box document columns--&amp;gt;
&amp;lt;fieldref id="{5f47e085-2150-41dc-b661-442f3027f552}" name="SelectFilename"&amp;gt;
&amp;lt;fieldref id="{8553196d-ec8d-4564-9861-3dbe931050c8}" name="FileLeafRef" required="TRUE"&amp;gt;
&amp;lt;fieldref id="{8c06beca-0777-48f7-91c7-6da68bc07b69}" name="Created" hidden="TRUE"&amp;gt;
&amp;lt;fieldref id="{fa564e0f-0c70-4ab9-b863-0177e6ddd247}" name="Title" required="FALSE" showinnewform="FALSE" showineditform="TRUE"&amp;gt;
&amp;lt;fieldref id="{28cf69c5-fa48-462a-b5cd-27b6f9d2bd5f}" name="Modified" hidden="TRUE"&amp;gt;
&amp;lt;fieldref id="{822c78e3-1ea9-4943-b449-57863ad33ca9}" name="Modified_x0020_By" hidden="FALSE"&amp;gt;
&amp;lt;fieldref id="{4dd7e525-8d6b-4cb4-9d3e-44ee25f973eb}" name="Created_x0020_By" hidden="FALSE"&amp;gt;
&lt;/div&gt;

&lt;/p&gt;
&lt;p&gt;
So that solved it for the content types - if I added those content types to document libraries, there was no more issue of checking documents from office 2003. However, if you are adding the content types to the document library using either a feature (elements file with ContentTypeBinding) or using schema.xml, an incorrect character or binding in the xml files may also trigger the same issue. so beware!

&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;p&gt;
&lt;script type="text/javascript"&gt;&lt;!--
google_ad_client="ca-pub-2727174828663024";
google_ad_width=468;
google_ad_height=60;
google_ad_format="468x60_as";
google_ad_type="text";
google_color_border="333333";
google_color_bg="940F04";
google_color_link="99C9FF";
google_color_url="99C9FF";
google_color_text="FFFFFF";
//--&gt;&lt;/script&gt;
&lt;script type="text/javascript"
  src="http://pagead2.googlesyndication.com/pagead/show_ads.js"&gt;
&lt;/script&gt;
&lt;/p&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/20371103-4985880945097533184?l=www.sharepoint-tips.com'/&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/VUTfPBUBngr61PwcXwxOAJLFbew/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/VUTfPBUBngr61PwcXwxOAJLFbew/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/VUTfPBUBngr61PwcXwxOAJLFbew/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/VUTfPBUBngr61PwcXwxOAJLFbew/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;</content><link rel="replies" type="application/atom+xml" href="http://www.sharepoint-tips.com/feeds/4985880945097533184/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="https://www.blogger.com/comment.g?blogID=20371103&amp;postID=4985880945097533184" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/20371103/posts/default/4985880945097533184" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/20371103/posts/default/4985880945097533184" /><link rel="alternate" type="text/html" href="http://www.sharepoint-tips.com/2009/06/error-message-when-checking-in-document.html" title="Error message when checking in a document from office 2003" /><author><name>Ishai Sagi [SharePoint MVP]</name><uri>http://www.blogger.com/profile/15906615979471157409</uri><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd="http://schemas.google.com/g/2005" name="OpenSocialUserId" value="11018880968906117177" /></author><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-20371103.post-4638445025360188451</id><published>2009-06-24T15:15:00.000-07:00</published><updated>2009-06-24T15:20:05.914-07:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="CAML" /><title type="text">Using the Today token in a CAML query</title><content type="html">&lt;p&gt;I just noticed today that the CAML creator application that I am using (by U2U) does not handle the today token properly (at least the version I have).
&lt;br/&gt;The Today token is used in views, when you  want to filter on a date based on the current date. For example, if you want to set up a view that shows future events you set the filter on start date &gt; "[Today]".&lt;/p&gt;
&lt;p&gt;
However, in CAML, you cannot use "[Today]" - the square brackets cause the query to break. Instead, you use "&amp;lt;Today /&amp;gt". &lt;br/&gt;
For example:&lt;br/&gt;
&amp;lt;Where&amp;gt&amp;lt;Geq&amp;gt;&amp;lt;FieldRef Name='EventDate' /&amp;gt;&amp;lt;Value Type='DateTime'&amp;gt;&amp;lt;Today /&amp;gt;&amp;lt;/Value&amp;gt;&amp;lt;/Geq&amp;gt;&amp;lt;/Where&amp;gt;
&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;p&gt;
&lt;script type="text/javascript"&gt;&lt;!--
google_ad_client="ca-pub-2727174828663024";
google_ad_width=468;
google_ad_height=60;
google_ad_format="468x60_as";
google_ad_type="text";
google_color_border="333333";
google_color_bg="940F04";
google_color_link="99C9FF";
google_color_url="99C9FF";
google_color_text="FFFFFF";
//--&gt;&lt;/script&gt;
&lt;script type="text/javascript"
  src="http://pagead2.googlesyndication.com/pagead/show_ads.js"&gt;
&lt;/script&gt;
&lt;/p&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/20371103-4638445025360188451?l=www.sharepoint-tips.com'/&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/KqnNGvvD93eqiQ6bjpvzjYrADK8/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/KqnNGvvD93eqiQ6bjpvzjYrADK8/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/KqnNGvvD93eqiQ6bjpvzjYrADK8/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/KqnNGvvD93eqiQ6bjpvzjYrADK8/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;</content><link rel="replies" type="application/atom+xml" href="http://www.sharepoint-tips.com/feeds/4638445025360188451/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="https://www.blogger.com/comment.g?blogID=20371103&amp;postID=4638445025360188451" title="3 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/20371103/posts/default/4638445025360188451" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/20371103/posts/default/4638445025360188451" /><link rel="alternate" type="text/html" href="http://www.sharepoint-tips.com/2009/06/using-today-token-in-caml-query.html" title="Using the Today token in a CAML query" /><author><name>Ishai Sagi [SharePoint MVP]</name><uri>http://www.blogger.com/profile/15906615979471157409</uri><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd="http://schemas.google.com/g/2005" name="OpenSocialUserId" value="11018880968906117177" /></author><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">3</thr:total></entry><entry><id>tag:blogger.com,1999:blog-20371103.post-1563681922955696268</id><published>2009-06-02T03:00:00.000-07:00</published><updated>2009-06-02T03:02:00.956-07:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="SharePoint How To Book" /><title type="text">Read bits of my book in google</title><content type="html">&lt;p&gt;I just discovered that Google has bits of my &lt;a href="http://books.google.com.au/books?id=aJa4sjrHVLkC"&gt;sharepoint book&lt;/a&gt; that you can see for free- including the section on keyboard shortcuts (which I think is useful to print and put on the wall). Take a look (and feel free to write a review either there in google or here in the comments).
The link is &lt;a href="http://books.google.com.au/books?id=aJa4sjrHVLkC"&gt;http://books.google.com.au/books?id=aJa4sjrHVLkC&lt;/a&gt;

&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;p&gt;
&lt;script type="text/javascript"&gt;&lt;!--
google_ad_client="ca-pub-2727174828663024";
google_ad_width=468;
google_ad_height=60;
google_ad_format="468x60_as";
google_ad_type="text";
google_color_border="333333";
google_color_bg="940F04";
google_color_link="99C9FF";
google_color_url="99C9FF";
google_color_text="FFFFFF";
//--&gt;&lt;/script&gt;
&lt;script type="text/javascript"
  src="http://pagead2.googlesyndication.com/pagead/show_ads.js"&gt;
&lt;/script&gt;
&lt;/p&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/20371103-1563681922955696268?l=www.sharepoint-tips.com'/&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/VnA9IOgpE_8FhVOQ32ZqtbrndNw/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/VnA9IOgpE_8FhVOQ32ZqtbrndNw/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/VnA9IOgpE_8FhVOQ32ZqtbrndNw/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/VnA9IOgpE_8FhVOQ32ZqtbrndNw/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;</content><link rel="replies" type="application/atom+xml" href="http://www.sharepoint-tips.com/feeds/1563681922955696268/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="https://www.blogger.com/comment.g?blogID=20371103&amp;postID=1563681922955696268" title="1 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/20371103/posts/default/1563681922955696268" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/20371103/posts/default/1563681922955696268" /><link rel="alternate" type="text/html" href="http://www.sharepoint-tips.com/2009/06/read-bits-of-my-book-in-google.html" title="Read bits of my book in google" /><author><name>Ishai Sagi [SharePoint MVP]</name><uri>http://www.blogger.com/profile/15906615979471157409</uri><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd="http://schemas.google.com/g/2005" name="OpenSocialUserId" value="11018880968906117177" /></author><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-20371103.post-803284718184623066</id><published>2009-05-31T19:28:00.000-07:00</published><updated>2009-05-31T19:32:41.960-07:00</updated><title type="text">Easy links to remember for asking sharepoint questions</title><content type="html">&lt;p&gt;I hope this will be useful for someone - I made two tinyurls to help me (and others) remember the links to the sharepoint discussion forums in msdn. this way, all you have to remember is tinyurl.com and the text that I added:&lt;br/&gt;
&lt;br/&gt;
SharePoint Products and Technologies Forums home page: &lt;br/&gt;http://&lt;font color="blue"&gt;tinyurl.com&lt;/font&gt;/&lt;strong&gt;SharePointForums&lt;/strong&gt;
&lt;br/&gt;
&lt;br/&gt;
SharePoint general questions forum:&lt;br/&gt;http://&lt;font color="blue"&gt;tinyurl.com&lt;/font&gt;/&lt;strong&gt;SharePointForum&lt;/strong&gt;
&lt;br/&gt;
&lt;br/&gt;SharePoint development forum:&lt;br/&gt;http://&lt;font color="blue"&gt;tinyurl.com&lt;/font&gt;/&lt;strong&gt;SharePointDevForum&lt;/strong&gt;

&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;p&gt;
&lt;script type="text/javascript"&gt;&lt;!--
google_ad_client="ca-pub-2727174828663024";
google_ad_width=468;
google_ad_height=60;
google_ad_format="468x60_as";
google_ad_type="text";
google_color_border="333333";
google_color_bg="940F04";
google_color_link="99C9FF";
google_color_url="99C9FF";
google_color_text="FFFFFF";
//--&gt;&lt;/script&gt;
&lt;script type="text/javascript"
  src="http://pagead2.googlesyndication.com/pagead/show_ads.js"&gt;
&lt;/script&gt;
&lt;/p&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/20371103-803284718184623066?l=www.sharepoint-tips.com'/&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/5DF7yAHd9Q3xUzSZY_Z2F8CdecU/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/5DF7yAHd9Q3xUzSZY_Z2F8CdecU/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/5DF7yAHd9Q3xUzSZY_Z2F8CdecU/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/5DF7yAHd9Q3xUzSZY_Z2F8CdecU/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;</content><link rel="replies" type="application/atom+xml" href="http://www.sharepoint-tips.com/feeds/803284718184623066/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="https://www.blogger.com/comment.g?blogID=20371103&amp;postID=803284718184623066" title="1 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/20371103/posts/default/803284718184623066" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/20371103/posts/default/803284718184623066" /><link rel="alternate" type="text/html" href="http://www.sharepoint-tips.com/2009/05/easy-links-to-remember-for-asking.html" title="Easy links to remember for asking sharepoint questions" /><author><name>Ishai Sagi [SharePoint MVP]</name><uri>http://www.blogger.com/profile/15906615979471157409</uri><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd="http://schemas.google.com/g/2005" name="OpenSocialUserId" value="11018880968906117177" /></author><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">1</thr:total></entry></feed>
