Claims based authentication addresses privacy and other compliance concerns by requesting less specific, less personal information about people, and by trusting other parties or systems to do the “proof of identity” check.
The chain-of-responsibility pattern is a design pattern consisting of a source of command objects and a series of processing objects. Each processing object contains a set of logic that describes the types of command objects that it can handle, and how to pass off those that it cannot handle to the next processing object in the chain.
The .NET Framework 4 introduces a new programming model for writing multithreaded and asynchronous code that greatly simplifies the work of application and library developers. The new model enables developers to write efficient, fine-grained, and scalable parallel code in a natural idiom without having to work directly with threads or the thread pool. The new System.Threading.Tasks namespace and other related types support this new model.
Gets or sets a value indicating whether ASP.NET should check message authentication codes (MAC) in the page's view state when the page is posted back from the client.
11. Use Indexed Columns in where clause columns as they return results faster.
12. Create a primary key on each table you create and unless you are really knowledgeable enough to figure out a better plan, make it the clustered index
13. Create a primary key on each table you create and unless you are really knowledgeable enough to figure out a better plan, make it the clustered index.
14. Create an index on any column that is a foreign key.
15. Use set nocount on at the top of each stored procedure and set nocount off at the bottom.
16. Avoid using temp table unnecessarily, if needed explicity create them.
17. To help identify long running queries, use the SQL Server Profiler Create Trace Wizard to run the "TSQL By Duration" trace.
18. Use Joins instead of Subqueries.
19. "SET NOCOUNT ON" reduces network traffic between server and client.
20. use the SQL Server's Profiler Create Trace Wizard to run the "Profile the Performance of a Stored Procedure" trace to provide you with the data you need to identify poorly performing stored procedures.
21. Use covering index whereever needed, it reduces logical and physical IO and increases performance.
1. Use actual column names instead of '*' in the queries.
2. HAVING clause is used to filter the rows after all the rows are selected. It is just like a filter. Do not use HAVING clause for any other purposes.
3. Try to minimize number of subqueries in your query
4. Avoid using IN unnecessarily as IN is slowest.
5. IN is efficient when most of the filter criteria is in the sub-query.
6. EXISTS is efficient when most of the filter criteria is in the main query.
7. Use EXISTS instead of DISTINCT when using joins which involves tables having one-to-many relationship.
8. Try to use UNION ALL in place of UNION.
9. To store large binary objects, first place them in the file system and add the file path in the database.
10. Best practices :
a) Use single case for all SQL verbs
b) Begin all SQL verbs on a new line
c) Separate all words with a single space
d) Right or left aligning verbs within the initial SQL verb
Mirroring is creating an additional instance of a SQL Server, thereby increasing availability. The source instance is called Principal Server and the target instance is called the Mirrored server.
use the SQL Server's Profiler Create Trace Wizard to run the "Profile the Performance of a Stored Procedure" trace to provide you with the data you need to identify poorly performing stored procedures..
A covering index, is a form of a composite index, includes all of the columns referenced in the SELECT, JOIN, and WHERE clauses of a query. It reduces logical and physical IO and increases performance.
Web Application Stress ( WAS ) tool, simulates multiple HTTP clients making requests to your Web site, while ASP.NET includes a number of performance counters that you can use to track the execution of your application.
create a custom base class for the Global.asax file. This base class inherits from the HttpApplication class, just like the default Global class that sits behind the Global.asax file. The custom base class provides the same members as the default Global.asax file, but even better, you can extend the class with additional members, such as custom properties for tracking counters.
This counter measures (in milliseconds) how long it takes for the Web application to service a request. TTLB is a key
indicator of how scalable an application is.
Use as much of Stored Procedure as you can instead of queries inside the application. By this the execution happens at the backend and only results are returned thereby increasing performance and speed.
Yes. It dynamically disables public (or client) caching and switches the page to use server caching. This is because the substitutions need to happen via server-side logic.
It can be implemented in 2 methods:
1. Call the new Response.WriteSubstitution method, passing it a reference to the desired
substitution method callback.
2. Add a control to the page at the desired location, and set its
methodName attribute to the name of the callback method.
The following statement fetches all the objects in cache and stores in a dictionary object.
IDictionaryEnumerator CacheEnum = HttpContext.Current.Cache.GetEnumerator();
1. Easy to implement.
2. Data is cached at client side hence supports Web Farms
3. Most of the browsers support them
4. Reduces usage of server resources