We're updating the issue view to help you get more done. 

Switch re-linq from Level 1 security model to Level 2 security model

Description

Currently, re-linq works in partial trust only because of the [SecurityRules(SecurityRuleSet.Level1)] attribute applied to the Remotion.Linq assembly.

When this attribute is removed, TypeLoadExceptions are thrown when loading the types ParserException, UnmappedItemException, and ExpressionNodeInstantiationException because these types override the Exception.GetObjectData method. This exception can be circumvented by using the ISafeSerializationData interface instead of overriding GetObjectData (see http://msdn.microsoft.com/en-us/library/system.runtime.serialization.isafeserializationdata.aspx).

Therefore, refactor the two exception classes to use ISafeSerializationData, then remove the SecurityRulesAttribute application from re-linq.

Status

Assignee

Michael Ketting

Reporter

Fabian Schmied

Labels

None

Components

Fix versions

Priority

Normal
Configure