<p>I'd like a dead simple explanation of policy injection for less-informed co-workers.  Where is a good resource for this?  I learned about policy injection from the entlib help files, which I'm sure aren't the best option.</p>

[{'answer_id': 73648, 'author': 'Fredrik Kalseth', 'author_id': 1710, 'author_profile': 'https://Stackoverflow.com/users/1710', 'pm_score': 1, 'selected': False, 'text': '<p>What the EntLib calls Policy Injection, is really Aspect Oriented Programming. I wrote a post <a href="http://iridescence.no/post/Aspect-Oriented-Programming-A-Primer.aspx" rel="nofollow noreferrer">introducing the concepts of AOP on my blog</a> a while back, maybe it\'ll be helpful.</p>\n'}, {'answer_id': 253764, 'author': 'Robert S.', 'author_id': 7565, 'author_profile': 'https://Stackoverflow.com/users/7565', 'pm_score': 3, 'selected': True, 'text': '<p><a href="http://msdn.microsoft.com/en-us/library/cc309370.aspx" rel="nofollow noreferrer">The MSDN documentation for Policy Injection</a> has a pretty clear explanation:</p>\n\n<blockquote>\n  <p>Applications include a mix of business\n  logic and crosscutting concerns, and\n  the two are typically\n  intermingled—which can make the code\n  harder to read and maintain. Each task\n  or feature of an application is\n  referred to as a "concern." Concerns\n  that implement the features of an\n  object within the application, such as\n  the business logic, are core concerns.\n  Crosscutting concerns are the\n  necessary tasks, features, or\n  processes that are common across\n  different objects—for example,\n  logging, authorization, validation,\n  and instrumentation. The purpose of\n  the Policy Injection Application Block\n  is to separate the core concerns and\n  crosscutting concerns.</p>\n</blockquote>\n\n<p>Simply put, the PI block lets developers define a set of policies that specify the behavior of objects in the system. So your core business logic, such as the code that calculates profit per unit in a fiscal year (one concern), is separated from the logging of that execution of logic (another, but more often used, concern). </p>\n\n<p>The same documentation says that the PI block is <em>not</em> AOP because:</p>\n\n<ul>\n<li>It uses interception to enable only pre-processing handlers and post-processing handlers. </li>\n<li>It does not insert code into methods. </li>\n<li>It does not provide interception for class constructors. </li>\n</ul>\n\n<p>So trying to look at PI from an AOP perspective can muddy the waters a bit.</p>\n'}]
['https://Stackoverflow.com/questions/73487', 'https://Stackoverflow.com', 'https://Stackoverflow.com/users/6542/']