2

プロジェクトに EDMX モデルがあります。POCO エンティティ ジェネレーターを使用してエンティティ クラスを生成し、すべての POCO エンティティに Serializable 属性を追加します。しかし、私はこのエラーが発生しました:

Unable to serialize the session state. In 'StateServer' and 'SQLServer' mode, ASP.NET will serialize the session state objects, and as a result non-serializable objects or MarshalByRef objects are not permitted. The same restriction applies if similar serialization is done by the custom session state store in 'Custom' mode.

約1週間前にこのエラーが発生し、その属性を追加することで問題が解決しました。しかし、今日、私は再びこのエラーを受け取りました!!! 私は何を間違えましたか?!!これを解決するためにPOCOジェネレーターに追加する必要があるものはありますか?!!

更新 1 :

ここで、web.configで使用したコード

<sessionState timeout="30" mode="StateServer" stateConnectionString="tcpip=localhost:42424" />

更新 2 :

ここで私のPOCOジェネレーター:

// Emit Entity Types
foreach (EntityType entity in ItemCollection.GetItems<EntityType>().OrderBy(e => e.Name))
{
    fileManager.StartNewFile(entity.Name + ".cs");
    BeginNamespace(namespaceName, code);
    bool entityHasNullableFKs = entity.NavigationProperties.Any(np => np.GetDependentProperties().Any(p=>ef.IsNullable(p)));
#>
[Serializable()]
<#=Accessibility.ForType(entity)#> <#=code.SpaceAfter(code.AbstractOption(entity))#>partial class <#=code.Escape(entity)#><#=code.StringBefore(" : ", code.Escape(entity.BaseType))#>
{
<#
....
4

0 に答える 0