As I always mention in my presentations and articles (such as this one), I’m not too crazy about deploying everything to Bin folder (OverCASing). I believe There is a place for everything! Honestly , many stuff in SharePoint don’t work when executed from bin folder and more importantly, there are customers out there that don’t care (read it , they don’t want to pay for it !). I am not going to walk you through this discussion at all.
On the other hand, I know that there are many resources out there that talk about pros and cons of utilizing code access security in your solution packages and run your Web part assemblies (or your code in general) in a super sandbox mode, a.k.a Partially trusted environment. What I haven’t seen though is a complete explanation of what happens behind the scenes when you include code access security in your solution manifest file and what gets changes , where and when, a solution containing CAS settings gets deployed or retracted. I was mostly interested to see what happens when the solution package gets retracted.
Any Code that runs from the bin directory of an IIS Web application (SharePoint Web application is an IIS Web site all together) runs in a secure mode; therefore you have to explicitly give it the permissions it requires to function. Easiest solution (FWIW, the most stupid one ) is to raise the trust level of your Web application to full (in the Web.config file).The recommended approach is to elevate the permissions of the assembly by creating a new security policy file and point your web.config file to it. Thankfully, by using solution package concept, SharePoint provide a way for automating this process for ya.After you create a SharePoint Web application its Web.config looks like this:
Note: Only the sections of the web.config file that are related to this topic were included below.
[Xml]
[/Xml]
Read more…
On 20th of January , I will be speaking at Professional Asscociation For SQL Server… So if you’ re around – please come by and say “Hi” to the former Vancouverite 🙂
Click here for more information and registration! Looks like if you can’t attend in person , PASS provide a live Meeting access as well.
Date: Tuesday, January 20th, 2009
Agenda: 5:30pm – Pizza and Socializing
6:00pm – Sponsor Presentation by Idera via Live Meeting
6:30pm – Feature Presentation
8:00pm – Wrap up and draws.
Location: Sierra Systems – 25th Floor 1177 West Hastings Street (Vancouver)
LiveMeeting: https://www.livemeeting.com/cc/usergroups/join?id=GD36Q3&role=attend
See ya!
From 12 degrees below zero (Toronto), I extend my warmest regards to you and wish all of you the happiest of holidays and a New Year filled with promise, healthy families and joy!
In New year’s Day, let’s all pray for a world filled with peace , goodwill and no sign of war or racism! I am not shooting is stars , ain’t I? 😉
Why can’t we all just play nice in our own little sandboxes?!!
Here is the list of the SharePoint classes that I have documented on MSDN, Enjoy!
Microsoft.SharePoint.SPSecurity.SPOperationCode
|
MSDN link
|
Microsoft.SharePoint.Administration.SPAdministrationServiceJobDefinition
|
MSDN link
|
Microsoft.SharePoint.Administration.SPJobDefinitionCollection
|
MSDN link
|
Microsoft.SharePoint.Administration.SPRunningJob
|
MSDN link
|
Microsoft.SharePoint.Administration.SPRunningJobCollection
|
MSDN link
|
Microsoft.SharePoint.Help.SPHelpMerge
|
MSDN link
|
Microsoft.SharePoint.WebControls.BackLinksIterator
|
MSDN link
|
Microsoft.SharePoint.WebControls.BaseXmlDataSource
|
MSDN link
|
Microsoft.SharePoint.WebControls.ContentDatabaseSection
|
MSDN link
|
Microsoft.SharePoint.WebControls.ContentDatabaseSectionMode
|
MSDN link
|
Microsoft.SharePoint.WebControls.DataTableDataSourceView
|
MSDN link
|
Microsoft.SharePoint.WebControls.DiffSelectorIterator
|
MSDN link
|
Microsoft.SharePoint.WebControls.GroupPermissions
|
MSDN link
|
Microsoft.SharePoint.WebControls.IDesignTimeHtmlProvider
|
MSDN link
|
Microsoft.SharePoint.WebControls.IFormDelegateControlSource
|
MSDN link
|
Microsoft.SharePoint.WebControls.InputFormCheckBox
|
MSDN link
|
Microsoft.SharePoint.WebControls.ItemHiddenVersion
|
MSDN link
|
Microsoft.SharePoint.WebControls.IXPathNavigator
|
MSDN link
|
Microsoft.SharePoint.WebControls.LinkSection
|
MSDN link
|
Microsoft.SharePoint.WebControls.LinksTable
|
MSDN link
|
Microsoft.SharePoint.WebControls.ListViewSelector
|
MSDN link
|
Microsoft.SharePoint.WebControls.MenuSeparatorTemplate
|
MSDN link
|
Microsoft.SharePoint.WebControls.RadioButtonChoiceField
|
MSDN link
|
Microsoft.SharePoint.WebControls.RecentChangesIterator
|
MSDN link
|
Microsoft.SharePoint.WebControls.RepeatedControls
|
MSDN link
|
Microsoft.SharePoint.WebControls.ServerSelector
|
MSDN link
|
Microsoft.SharePoint.WebControls.SiteAdministrationSelector
|
MSDN link
|
Microsoft.SharePoint.WebControls.SiteActions
|
MSDN link
|
Microsoft.SharePoint.WebControls.SPSqlDataSource
|
MSDN link
|
Microsoft.SharePoint.WebControls.SPXmlDataSource
|
MSDN link
|
Microsoft.SharePoint.WebControls.SubMenuTemplate
|
MSDN link
|
Microsoft.SharePoint.WebControls.VersionDiffIterator
|
MSDN link
|
Microsoft.SharePoint.WebControls.WebApplicationSelector
|
MSDN link
|
Microsoft.SharePoint.WebControls.XmlUrlDataSource
|
MSDN link
|
Almost a year ago, I wrote a post explaining how CTE (Common Table Expressions) can make your life much easier when working with your membership users in chunks and pages in SharePoint (or ASP.NET). Well, since then I have received couple emails from people asking for the UI part of that post (SPGridView) so I decided to write another follow up post here to demonstrate how to use SPGridView, SPGridViewPager and Common Table Expression to achieve a true pagination through your membership users.
Well, We all know that pagination has been always a very common feature when displaying and working with data in an application. The GridView control in ASP.NET 2.0 (my Swiss army control to display and work with data) offers a great support for standard paging with small data sets but when it comes to larger sets of data, things can get a bit funky (It pulls all the data back to the client by default). Back in good old ASP.NET 1.1 days, DataGrid control used to expose a property called VirtualItemCount that defines the number of records/items when custom paging is used. Unfortunately, this is missing in the GridView control!
Read more…