05
Mar

SharePoint branding without accessibility requirements

If a SharePoint site has to be branded but is not required to meet any accessibility standard, the next consideration is whether the proposed branding style is radically different from the default look of SharePoint (or any of its associated built-in styles).

If the branding is exactly the same except for a change of colour, a new site theme should be created or an existing theme should be copied and modified.

If there are small structure and colour changes required to a built-in style for a SharePoint, the built-in SharePoint style should be copied and modified.

If the branding of the proposed SharePoint site is quite different from any of the built-in styles, a new branding will have to be created from scratch.

An example of changes that would qualify as regarding a complete build of master pages would be a custom navigation menu.

General considerations when creating a completely new branding for SharePoint

If the design of the site is going to be radically different from built-in SharePoint sites, the best practice is to create static web pages of the site design. This is the case for both accessible and non-accessible site designs.

The static pages should work well across a variety of browsers and pass accessibility testing if this is a requirement for the final SharePoint branding. This task of creating the static web pages could be done by an external party such as a web design agency. There are guidelines that should be followed when creating static pages for a branding for SharePoint that are outside the scope of this document.

Once these static pages have been created, these static pages will need to be cut up into separate ASP.NET files that SharePoint will use as the layout. This is a developer task.

Custom development of code and website files are also required when creating a new SharePoint branding.

Sites with accessibility requirements will require a lot more coding than those without. The development required really depends on the requirements of the site content.

SharePoint Designer

SharePoint designer is a free programme from Microsoft that can be used to customize the appearance of SharePoint whether it is WSS only or MOSS. Although some parts of the designer may be useful such as the workflow wizard, it is not suitable for any significant branding of SharePoint.

Accessibility standards overview

Website accessibility standards are specified by the Web Accessibility Initiative (WAI) which is a sub group of the W3C. The most common accessibility level to aim for is Double-A.

The main goals to achieve Double-A conformance is to produce clean HTML where the layout is controlled by CSS.

Aside from producing reasonably clean HTML, other considerations for accessible sites include providing:

  • alternate text for images
  • alternate content for media such as flash or navigation that depends on JavaScript
  • meaningful titles for links on the page

Some of the standards for accessibility are the responsibility of the content editor such as providing alternate means of accessing content.

There are programs such as Total Validator which can automatically validate a web page against an accessibility level.

VN:F [1.9.2_1090]
Rating: 0.0/10 (0 votes cast)
VN:F [1.9.2_1090]
Rating: 0 (from 0 votes)
Comments Off
05
Mar

Considerations when branding MOSS SharePoint sites

With MOSS 2007 the following can be achieved:

  • Colour scheme changes
  • Major layout and appearance changes, making the site unrecognisable as a SharePoint
  • Sites that conform to accessibility guidelines (though not without considerable effort)

The first consideration when branding a MOSS sites is whether the site has to conform to accessibility guidelines.

By default, SharePoint does not come close to conforming to accessibility guidelines but it can be re-worked with a variety of techniques to produce accessible content with (at least) 3 caveats.

These caveats are:

  • Accessibility can only be achieved when a user is accessing a site in a read-only style mode
  • Many advanced features of SharePoint cannot be used. These include:
    • Almost all web parts
    • Web part zones (a type of layout that allows flexibility in placement of modules)
    • Built-in brandings and themes that come with SharePoint
    • The default content editor
  • It takes lots of work! Custom development is almost certainly required.

The NSU Safe network site is an example of a SharePoint site that conforms to Double-A compliancy.

clip_image002

There are 2 notable frameworks that have been created to assist with making SharePoint accessible.

The Accessibility Kit for SharePoint (AKS)

There is an accessibility framework produced by a HiSoft in association with Microsoft. The framework is currently at version 2.0 at this time.

The kit includes more accessible versions of the built-in SharePoint themes and layouts though using any of these is a token gesture towards accessibility.

From investigation, a lot of development is still required to create an accessible site and the AKS does not provide much help towards this.

The Alternative Rendering Framework (ARF)

ARF is an open source framework to assist with creating accessible SharePoint sites. One of the core concepts of the framework is to keep using SharePoint lists and document libraries as the data store for a site but providing an alternative method for customizing the display of this data.

The ARF has proved very useful for creating accessible sites is used in the NSU Safe Network site.

VN:F [1.9.2_1090]
Rating: 0.0/10 (0 votes cast)
VN:F [1.9.2_1090]
Rating: 0 (from 0 votes)
Comments Off
29
Jan

Below are the rest of my observations on SharePoint 2010. Apologies for the delay in publishing these, I’ve been running a .NET training course internally in work.

  • Team sites now have a pages library
  • Wiki linking is built into pages. You can now wiki link to pages, lists, items and docs
  • Silverlight is built-in to SharePoint’s ‘Create’ dialog. Apparently SL can be made accessible. Not sure if this is the case with this Silverlight dialog. Need to check accessibility
  • Pages check for changes every minute and auto save if you have made any.
  • Built-in Rich Text Editor has multiple levels of undo
  • Versioning is on by default.
  • New master pages exist. v4 is the latest. Changes here are carried through to site settings pages. Also have a minimal (no ribbon), simple (for error pages) and default (legacy)
  • Accessibility is covered by everything being AA and XHTML. Not sure if this applies to central admin though.
  • Text editors all render to XHTML
  • You can add buttons to the SP Ribbon. I tried this and it’s a nightmare….
  • You can associate more forms with lists, rather than New, Edit & Display. This includes InfoPath forms. Done through SPD
  • XLSTViewWebPart is used for all list data now. More efficient and custom XSL can be supplied.
  • Ajax settings can be configured on lists, i.e. refresh interval, manual refresh button, enable/disable Ajax etc.
  • Lists can support inline editing (enabled in SPD) and a rating column (think star’s *****) , although InfoPath doesn’t support the latter in it’s designer.
  • 2 versions of InfoPath are being banded about, a designer and a ‘Filler’
  • A new post processing synchronous event now exists for lists that can be used to give feedback to a user after an item has been added.
  • Cancelled events can redirect to a custom page that displays within a SP Modal Dialog
  • Event submitters can be determined. In WSS sometimes the event owner would be assigned to a workflow/system account. MSF holds details on who raised what event.
  • Built-in SP Explorer doesn’t expose bound list events. This is poor. No visibility if a list has 34 events already bound to it.
  • Lists now support referential integrity (master detail) and cascading deletes.
  • List joins can be made through queries (join up to 6 lists). Limit of 800kb for return results
  • Projected fields now exist within lists, i.e. on a child list display a field from the parent, i.e. parent:company name
  • MSF (Microsoft SharePoint Foundation) now supports 50m list items
  • Throttling available from central admin for list queries. Can be time based (i.e. only allow this quota between 9-5pm). Settings available to allow/deny overrides via the object model. Administrator has a lot of control on query results.
  • Unique column constraints available on column types. Company name can be made unique. Requires indexing and depends on SQL Collation
  • Linq To SharePoint removes CAML Pain, but you need to generate SP Class Entities via a tool in the 14 hive called SP Metal. Basically point SP Metal at your SP Site and it generates a load of strongly typed C# classes.
  • Lists are still stored as STP files, despite site templates being converted to WSP’s.
  • Columns now have validation. Syntax similar to Excel, i.e. [CompanyEmployees] >= 50

Client Object Model

  • Consistent interface across .NET, Silverlight, Javascript. Same (to a degree) method names. Obviously some differences in type support, i.e. JS’s NAN
  • ‘Client Context’ used to batch operations
  • All communications go through a client.svc WCF Service
  • Requests appear to be sent as XML, responses as JSON
  • New Silverlight webpart. XAP files deployed to webparts folder. XAP file is simple a zip for cross platform operation
  • LINQ To SP not provided within Silverlight. ADO.NET Data services used instead
  • Uploading an office theme for use in SP2010 doesnt work in this beta.
  • SharePoint ‘Web application service’ service under central admin is used to sync your WFE servers. It’s dangerous though because it starts deleting your IIS files when you stop it. It will recreate them when restarting but any web.config changes etc you’ve made are gone

Workflows

  • Workflows can now run against a site & list items. Event handlers needed to initialise
  • Workflows can listen to notifications from external systems before resuming excution. Uses EDE (external data exchange). Long winded and complicated process
  • Workflows can now be added & deployed via the new Feature packager
  • Workflows can be created in Visio, exported to SPD and then again brought into VS2010. You can move between Visio & SPD easy enough but it seems that when it enters VS2010 it can’t be exported again to the others
  • No version control in SPD other than SP2010’s list version control.
  • New workflow events (started, completed)
  • New visio web plugin displays visually the workflow path. It’s ok. Doesnt center workflow properly on load. Bit like page viewer web part
  • SSP is gone, replaced by Service Providers. These can be load balanced & moved across servers as required.
  • New Word automation service can be used to convert docs to PDF, Word 2003 etc. Word Open XML SDK intended for doc manipulation. Will still need Aspose.Net for Word 2003 docs
  • Developers can create their own Service Providers. Looks reasonably complicated. Specific usage scenarios, i.e. intense calculations etc

BCS

  • BCS is the new BDC
  • Entities are now ECT’s, External Content Types
  • BCS is now supports read/write to external systems
  • SPD used quite well to create connections and CRUD screens
  • SP2010 now has external lists that can expose data from external systems. Appears that workflows now support for these list types
  • SSO details now stored in new Secure Store Service
  • Groove (SP Workspace) seemed decent enough. Change I made in Groove went back to SP2010 and then on out to external system (SQL DB)

ECM

  • Folders now supported in Page Libraries
  • new content deployment option ’snapshot’. Time based snapshot sent between servers. Requires Enterprise SQL ‘05 or ‘08.
  • New web analytics & reports. Looked ok but definitely not google contenders. Didn’t appear to be a means to export
  • End users can now tag metadata to content themselves in addition to standard method
    Record management now possible ‘outside’ record center
  • New ‘Unique Document Id’ service. Every document given a unique ID. Stays with it even if moved. Apparently has limited configuration options. This ID when used in conjunction with a specific URL (by sticking the ID on the query string) will take people to the document regardless if it is moved within the same document library or across libraries within a site collection
  • Hold actions no longer tied to record center
  • New document set. Content type composed on sub content types. ‘Document Set’ feature needed to be activated for it to work.
  • Doc sets have versions and workflows can be run against them and constituents. Possible use is WF to check that all docs have been completed before moving to next stage.

Search

  • 3 Levels of Search for SP Foundation Server
      • Basic – Search Server Express 2010
      • Intermediate – SharePoint search 2010 (Index outside SP & Filestores)
      • Advanced – FAST can accept ‘push’ updates from code
  • JDBC Support now included
  • SP2010 has search connectors for Exchange, Notes, Documentum, FileNet, Opentext & custom .NET connector
  • Support for search attachments
  • Search web parts now unsealed. Can be overridden.
  • New ability to override a query before its executed and results before display to users
  • Search can have multiple levels of ranking models. Can be manipulated via PowerShell

BI

  • BI Includes status indicators (as before, i.e. red amber green), chart web part, Performance Point Services, Excel Services, BI Search, Visio Services (Visual representation of KPI’s in Visio)
  • Reporting Services doesn’t ship with 2010. Separate download
  • BI Search adds Excel & Reporting services to search. Search for ‘delivery’ & spreadsheets with query are returned & filtered on query
  • BI Centre template – Starting point with BI Portals
  • New server product ‘Gemini’ provides in memory olap manipulation. Seamless for developers, no need to touch it.
  • Little change is PerformancePoint Services
  • Office Excel Web app looks decent.

Sandbox Solutions

  • Site collection owners have power to deploy WSP’s to the sites sandbox, which is called ’solution gallery’
    Sandbox basically uses a cut down SP2010 Object model.
  • Code executes in a separate process ‘Microsoft SharePoint Foundation User Code Service’
  • A validation framework exists that can scan & validate wsp’s that are uploaded to the sandbox. Validators can revoke permission for the wsp to execute
  • Sandboxed solutions are isolated to their own site collection.
    Two versions of the Microsoft.SharePoint.dll exist. The full version and the subset.
  • When you create a new VS2010 project, you’re prompted if you want full trust of sandbox. If you select sandbox it ’still’ uses the full dll. No compile time checking that you should be using a restricted sharepoint dll.
  • Sandbox apps use quotas. These are configurable and cover a varied number of scenarios such as process memory, db calls etc. For example, 20 db calls = 1 resource point. It you hit the max quote your web part/code is halted by SharePoint
  • A timer job resets quotas at the end of the day.
  • Doesn’t appear to be a means to determine what caused your quota to max out
  • Quotas set via central admin or powershell
  • I feel that setting quotas could be a dark art. Users * web parts * queries/cpu executions etc
  • No means to promote from sandbox to live. Would require a removal & redeployment
  • At runtime, sandbox wsps are retrieved from the solution gallery. Any required dll’s are extracted to a temp folder, loaded into memory and immediately deleted.
  • It doesn’t look like you can debug sandboxed apps. There’s A) no place for PDB files and B) the user code service is a SP Service under central admin. No way to attach to it as far as I can see.
  • Sandboxed apps can be load balanced
VN:F [1.9.2_1090]
Rating: 10.0/10 (1 vote cast)
VN:F [1.9.2_1090]
Rating: +1 (from 1 vote)
Comments Off
14
Jan

Hi all,

So I’m on the SP2010 MS Ignite training in Dublin. The course is a beta but its providing useful. Here’s some observations:

  • STSADM for the most part replaced by Powershell. Aim is that STSADM will be deprecated in the next versions of Sharepoint. Powershell specific sharepoint version exists and users can create scriptlets for SP manipulation.
  • We now have a 14 Hive. Bye bye 12!
  • VS2010 is running on Windows Server 2008 with Hyper V. 8GB Ram and it runs ‘ok’. VS2010 is fickle and crashes a lot. Our laptops will struggle. Not sure even a central dev server will cut it.
  • New facility for mapped folders within VS2010, i.e. a mapped images folder that maps directly to the 14 hive images
  • Contents=1 still works for webpart maintenance page
  • Support for Visual Webparts (ascx files) as a project type.
  • Great new facility within VS2010 for managing features & solution packages. Very easy to move features about. Need to find out if this is scriptable. Best thing I’ve seen so far.
  • SharePoint explorer within VS2010 looks ok. Read only view of local sharepoint installs only. Currently available free tool SP Explorer is better than this but you can knacker your SP environment with it.
  • WebTemplates are replacing Site Templates. All WSP based. Can be exported and brought back into VS2010 & customised. I.e user creates site, exports into VS2010 and boom, rebuilability (new word!)
  • Features now have versions and dependencies (one level deep). With versions you can specify what gets upgraded.  We’ll need practice with this one..
  • We can target event receivers against the top level site ‘RootWeb Only’. Possibility that a ‘Child Web Only’ attribute will be available in RTM version
  • Can also target event receivers againts specific lists.
  • Workflows can now be associated to sites.
  • Features now have a property bag
  • Developer dashboard is good. At the moment it can only be turned on/off via code (PS or c#)
  • SharePoint can toggle UI Versions. Version 3 is the ‘classic’ look. Version 4 is the ‘ribbon’
  • Webtemplates are stored in the solution gallery. Site Template Gellery is gone.
  • Solution Sandbox stores content within the content db. I suspect this may use SQL Server 2008′s disk based storage.
  • Solutions now have a ‘resource point’ system. Limits can be assigned to ensure that a solution doesnt hog resources.
  • We can specify that solutions can be upgraded.
  • New events exist, i.e. site added

Davey

VN:F [1.9.2_1090]
Rating: 0.0/10 (0 votes cast)
VN:F [1.9.2_1090]
Rating: 0 (from 0 votes)
Comments Off
15
Sep

image

SP2010 So I’ve been looking at how to get a development VM sorted for SharePoint 2010. Surely it’s straightforward you ask? Unfortunately no. SharePoint 2010 is all about the 64’s, namely

SharePoint Server 2010

    • will be 64-bit only.
    • will require 64-bit Windows Server 2008 or 64-bit Windows Server 2008 R2. ll
    • will require 64-bit SQL Server 2008 or 64-bit SQL Server 2005.

    Hmm. This causes a problem as I (and a lot of others) currently develop on 32bit machines using either VMware or Virtual PC under a number of OS’s, such as XP, Vista etc.

I decided to try and get a base Windows 2008 RC2 VM setup with a beta of Visual Studio 2010 and SQL Server 2008, 64bit to see how it hangs together.

VMWare Server
First off I tried VMWare Server 2.0, which is free from the VM site. All I needed to do was install it on my existing machine (a laptop, 3GB memory) and set about creating my new VM. Thing is, apparently not all host machines are capable of running it. VMWare provide a little utility that you can use to determine if your machine can support 64 bit. You can find it here:

http://www.vmware.com/download/ws/drivers_tools.html

So my laptop fortunately passed with flying colours. Next step was to install the Win2k8 R2 OS, which as it happens was painless enough. Be sure to install the VM additions to improve performance.

Speaking of which, I immediately noticed that mouse updates and screen refreshes aren’t what I’m used to with Virtual PC. Lag is definitely noticeable. It actually got worse when SQL 2008 and VS 2010 were installed, with the VM constantly sitting at 100% CPU Usage. I’ve been hitting news groups and forums to determine what I can to to remedy this but unfortunately information is scarce. I’ve actually tried this VM on both my laptop and home PC (Quad Core, 3GB ram) and it still runs very poorly.

Windows 7

Windows 7 is the new contender and it comes with it’s own variant of Virtual PC, that supports and XP mode for older applications. Thing is, Windows 7 Ultimate doesn’t support Windows 2008 RC2 64bit as a guest operating system!  That’s that then!

Virtual Server 2005 on Windows 7

So what about running Virtual Server 2005, another of Microsoft’s VM technologies. on Windows 7

Possibly onto a winner here, I thought… but I was wrong. If you look at this post:

http://aboutdev.wordpress.com/2009/05/21/virtual-server-2005-and-windows-7/

you’ll see that Windows 7 intentionally blocks Virtual Server 2005 from running, with what is known as a ‘hard block’, basically to quote Microsoft:

Hard Block:

The software must exhibit the following behaviour to qualify for a hard block:

  1. The OS is rendered unusable and unrecoverable (includes bug check).
  2. The hard block is preferable to the alternative user experience, including:

    a. The OS would be left partially functional, and no in-context guidance can be given to the user, and the hard block can provide steps to remedy the problem.

    b. An application would be left unusable and unrecoverable (can’t be repaired by uninstall or upgrade). This should be an extremely rare case, since recovering from an application installation should be possible through install/uninstall software. The vendor would need to prove that that is not an option.

    I’ve found a few more posts whereby you can run the following to get Virtual Server 2005 to work on Windows 7 but it’s not supported:

First you should block PCA. I did that by the following way: In the Group Policy go to the Computer Configuration\Administrative Templates\Windows Components\Application Compatibility\ and enable all of the Turn off xxx entries. I think if you enable only the "Turn off Application Compatibility Engine" it would be enough but I wanted to be sure and enabled everything, later we are going to restore the original settings. Then go to the Computer Configuration\Administrative Templates\System\Troubleshooting and Diagnostics\Application Compatibility Diagnostics\ area and disable all of the entries so that we don’t come across any DCOM or driver related error.

IIS have to be prepared as well. Requirements are same as in Vista take a look at this link http://blogs.msdn.com/virtual_pc_guy/archive/2006/10/10/Installing-Virtual-Server-2005-R2-on-Vista-RC1-_2F00_-RC2.aspx you can find the correct settings.
Restart your computer and then you are ready to install the Virtual Server 2005 R2 SP1. Afterwards Virtual Server (VS) should be running and you can check it by Virtual Server Administration Website.

Next restore all settings what you changed in Group Policy and restart your computer. Unfortunately Application Compatibility Engine will detect Virtual server services and block that again. So you have to go to the Virtual Server directory (Usually C:\Program Files\Microsoft Virtual Server\) and rename the vssrvc.exe to something else (example: vssrvc_newname.exe). Open the registry editor and replace all entry which contains "vssrvc.exe" to vssrvc_newname.exe (path, DCOM object details, etc)
Finally restart your computer and enjoy Virtual server 2005 at Windows 7 RC :)

    So what’s the result then?
    Not much really I’m afraid. At this point the only options are:
  • Wait for VMWare to resolve performance issues with VMWare Server & Windows 2008
  • Run Windows 2008 natively on my laptop and use Hyper-V to run guest OS’s for development. A very costly option I might add.
  • Hope that a patch is released for Windows 7, or Windows 7 Virtual PC to support Windows 2008 guests.
    Truthfully I hope it’s the latter as Windows 7 is pretty cool to use.
VN:F [1.9.2_1090]
Rating: 0.0/10 (0 votes cast)
VN:F [1.9.2_1090]
Rating: 0 (from 0 votes)
Comments Off
20
Aug

ANTS Image I’ve been working with my team to investigate some performance problems that one of our customers are having with their SharePoint website.

It’s a reasonably complex environment that has a couple of SharePoint farms, utilising web controls, custom http modules, web services and a raft of other things such as a number of backend systems.

Behold, ANTS!

To get some idea on what’s going on, we decided to use ANTS Profiler from RedGate, a product that shows you what’s happening with your environment and even the code that causes the issues.

The current release is 5.1 and you get to use it for 14 days. The cool thing is that if you need longer you can email them for keys that will extend the time by 14 days or try this key without the quotes – ‘i need more time’. Yep seriously, that is meant to work. The full version is £245, or £307 if you want support / upgrades.

Anyway, to get started you need to install ANTS on your server. ANTS can profile IIS applications, standalone .Net applications, web services, COM+ servers and of course SharePoint. One thing to note is that for profiling SharePoint I used version 5.2 that apparently has more SharePoint integration features. The SharePoint version is on the RedGate FTP site, so have a look at this forum post if you need that.

Actually, with regard to SharePoint, there’s a wee bit more configuration involved. This guide from RedGate specifies what you need to do to get it to work. It mentions using the Primary Site Collection Administrator as the profiling identity, however, Andrew Woodward states on his 21apps blog that the App Pool Identity should be used. I used the AppPool identity and that appears to work.

              How do I use it?

              Once you get ANTS installed and configured you simply open the profiler from the start menu. You’ll see something like this:

              start profiler 

          1. Two tabs are at the top, the main application settings page and the performance counters tab. The Perf counters tab allows you to add in additional performance counters. Beware though, this can degrade the performance of ANTS and skew your results. The main things to note however are on the Application Settings Tab.
          2. In this case you want to select ASP.NET web application, enter the URL of your SharePoint site.
          3. Ensure that you enter the correct port. If you leave it at 8013 it won’t work. Selecting the original port will ensure that it correctly picks up your site.

          Once you click the ‘Start Profiling’ button, you’ll find that your website restarts. This ensures that you’ve got a clear run for profiling, but of your on a customers environment just be aware that it’ll bring down any other hosted IIS Sites that may be on the same box. Once the profiling runs you’ll see something like this:

              ants

              Basically the big blue boxes with numbers correspond to the following:

          1. Bookmark area – handy if you have a massive graph and want to see specific sections. Actually that’s one of the things you’ll notice about ANTS. You need to keep a note of what actions occur and in what order. It’s not that easy to determine if someone clicked on login.aspx or profile.aspx from the graph – you’ll just see a spike.

            You can actually raise a specific type of exception in your code and ANTS will pick it up. Details on how to raise ANTS exceptions and isolate ASP.Net pages can be found here:

            Isolating single ASP .NET pages in ANTS Profiler results

            I’d say that should only be used in pretty severe circumstances as you’ll have to redeploy production code again when finished. The best thing is to ensure that minimal people are on the environment and that all site operations are coordinated.

          2. The Ectoplasm meter – Basically you’ll see spikes appearing here when something happens, such as a user clicking a button or submitting a page. You can use the mouse to select an area here and add a bookmark (point 1). One thing to note is the small thin lines in the ‘events area’ (between 1&2). Each line means that some sort of exception occurred. You can click on these and the profile will display where the error occurred in area 3.
          3. The Call Tree – The call tree is the main area in which you’ll see what’s happening. The columns at the top are clickable, allowing you to sort by Method name, Time, Time with children and Hit Count. You can change the timing options by accessing the view menu or by hitting the F6, F7, F8 & F9 keys. A useful timing option is ‘Percentages (F6)’. This shows how much time is spent on a method compared with the entire page operation.

            The tree opens from the top downwards and you can drill into what composes a method by expanding the ‘+’ at the left of a tree node.

          4. The Call Graph -  The call graph can be accessed by clicking the graph icon. What this does is provide you with a really great way of seeing where the method was called from and navigating through the call stack.

            You can basically click on the calling method and the screen redraws to show you what method called it, etc. The usefulness in this comes from the fact that you can traverse up the call stack to get to methods with names that actually make sense, rather than SPXmlDocCache.GetGlobalXmlDocumentCore(string PathXML, bool bFeature). To see what method called the method you’re looking at, you simply click it.

            Here’s what the call graph looks like

            image

          5. Change View – You can show the methods called in a number of ways. I’ve discussed the call tree and call graph, the final view is the method grid. Again it’s simply another view on the methods called, but in a tabular format. Sorting by Percentages / Milliseconds is especially useful in this view.
          6. Display type – The display type allows you to tailor what methods ANTS shows you. You have options for Top down or Bottom up and both these can be further tweaked to show all methods or methods with source. I haven’t covered the source view yet, but yes ANTS will show you offending lines code if you have the PDB files available. I’ll cover this shortly.

            One thing to note is that if you don’t see any methods, try setting the display to all methods.

          7. Source View – Yep, what we really want to see…. who’s fault it was that the code is running slow! The source view gives you a view on what code exists in a method. Clicking on a different method updates this view with the relevant code.

            How do I view code?

            Basically you need the PDB’s for your code. This means that you need to compile it in debug mode and copy these PDB’s to the server that’s hosting your code. The installation/configuration guide mentions that they need to go in the app_bin of of your IIS Site. I’ve had some issues with the PDB’s not being picked up and subsequently I’ve placed them in the Bin and GAC as well.

RedGate have an article on creating a ‘Global Debugging Symbols’ directory. I’ve not tried this so if you have any joy with it let me know.

The main thing to note is that even if you can’t see the code, ANTS gives you enough insight into the situation to make it worthwhile.

Conclusion

Overall I think ANTS Profiler is a great tool and it certainly shed’s light on code performance issues. The visual parts of the application are extremely impressive, especially as they make determining where a method is called from very straightforward.

Version 5.1 (and I believe 5.2) don’t yet have the facility to save ‘code views’ from your PDBs with the project, which is a shame. Hopefully the next version will address this.

There are alternatives of course, such as JetBrains profiler. I’ve not used this so I can’t comment on it’s effectiveness.

VN:F [1.9.2_1090]
Rating: 0.0/10 (0 votes cast)
VN:F [1.9.2_1090]
Rating: 0 (from 0 votes)
Comments Off
04
May

Here’s a wee link I discovered on Andrew Woodward (MVP’s) blog. Its a free webinar on SharePoint and SQL Server 2008 Reporting Services.

Here’s the blurb from the site:

Put the Pedal to the Metal
Reporting through SharePoint – Webinar

Date:    Thursday, May 7th

Time:    2 to 3 pm Eastern (1 to 2 pm Central)

There is no charge for this webinar

SharePoint guru Coskun "Cujo" Cavusoglu will be your driver and discuss how Microsoft SQL Server 2008 Reporting Services has two gears: Native and SharePoint Integrated. Native mode is like driving on a highway (smooth and fast) but there is a speed limit. Incorporating Reporting Services into MOSS via SharePoint Integrated mode enables users to put the pedal to the metal and speed through tasks.

We will explore how the integration works and how to get the most out of your investment if you set up Reporting Services in SharePoint Integrated mode. You will learn the functionalities that didn’t make it to the integrated mode, or unsupported scenarios, that you should be fully aware of before putting the foot to the floor. Both pros and cons will be discussed.

VN:F [1.9.2_1090]
Rating: 0.0/10 (0 votes cast)
VN:F [1.9.2_1090]
Rating: 0 (from 0 votes)
Comments Off
-->