[seasar-dotnet:2562] .Net Core3でQuill~DBFluteを動かしたい

志水正幸 ie2m-smz @ asahi-net.or.jp
2020年 5月 29日 (金) 12:15:17 JST


志水です。
お世話になっております。

表題とおりなのですが、最終的にDBFluteを動作させたいと思っています。
いまBlazor(サーバ)に現在稼働中のQuillやseasarなど必要なDllを参照させて
動作するか試してますが
QuillInjector.GetInstance().Inject(this);が実行され正常に帰ってきたあと
Tantou AA = _MTantouFacade.GetMTantouData(11521);を実行して
データを読もうとしたのですが、以下のエラーとなってしまいます。
※Castle.DynamicProxy.dllがSeasar.Quill.dllの参照はしています。
※Blazor(サーバ)には以下のパッケージをインストールしています。
・System.Configuration.ConfigurationManager
・System.AppDomain
・System.Reflection.Emit

どうやら、protected MTantouBhv 
mMTantouBhv;を宣言したら下記の事象がでています。
Seasar.Framework.Aop.ProxyのDynamicAopProxyクラスで
インスタンス生成?する箇所でエラーとなっているようです。
#if NET_4_0
         /// <summary>
         /// プロキシオブジェクトを生成します
         /// </summary>
         public object Create()
         {
             if (_componentType.IsInterface)
             {
ココ➡                return 
_generator.CreateInterfaceProxyWithoutTarget(_componentType, _interceptors);
             }
             else
             {
                 return _generator.CreateClassProxy(_componentType, 
_interceptors);
             }
         }

色々とググってみたのですが、このエラーに関する記事をみると
Net CoreでAppDomainが云々と難しいことが書いてあって
実装されていないような感じのことがかかれていたり
質問がCLOSEとなっているようなんですが、実装されてないんですかね??
また回避方法など知っておられたら教えてください。


以上、宜しくお願い致します。



*************************************************************************************************
Exceptionのスタックトレース
*************************************************************************************************
Seasar.Quill.Exception.QuillApplicationException
   HResult=0x80131600
Message=[EQLL0037]プロキシオブジェクト(MTantouDao)の生成に失敗しました。コンストラクタ内の処理、アクセス修飾子、インターセプターを設定しているメソッドがインターフェースor 
virtualになっているか、Castle.DynamicProxy.dllがSeasar.Quill.dllと同じ場所にあるか等をご確認下さい。
   Source=Seasar.Quill
   スタック トレース:
    at Seasar.Quill.QuillComponent.CreateProxyObject(Type componentType, 
Type receiptType, IAspect[] aspects) in 
C:\TEST\Source\s2container.net-1.4.0-RC3\source\Seasar.Quill\QuillComponent.cs:line 
270
    at Seasar.Quill.QuillComponent..ctor(Type componentType, Type 
receiptType, IAspect[] aspects) in 
C:\TEST\Source\s2container.net-1.4.0-RC3\source\Seasar.Quill\QuillComponent.cs:line 
100
    at Seasar.Quill.QuillContainer.GetComponent(Type type, Type 
implType) in 
C:\TEST\Source\s2container.net-1.4.0-RC3\source\Seasar.Quill\QuillContainer.cs:line 
130
    at Seasar.Quill.QuillInjector.InjectField(Object target, FieldInfo 
field, Type implType) in 
C:\TEST\Source\s2container.net-1.4.0-RC3\source\Seasar.Quill\QuillInjector.cs:line 
346
    at Seasar.Quill.QuillInjector.InjectField(Object target, FieldInfo 
field, ImplementationAttribute implAttr) in 
C:\TEST\Source\s2container.net-1.4.0-RC3\source\Seasar.Quill\QuillInjector.cs:line 
333
    at Seasar.Quill.QuillInjector.InjectField(Object target, FieldInfo 
field) in 
C:\TEST\Source\s2container.net-1.4.0-RC3\source\Seasar.Quill\QuillInjector.cs:line 
269
    at Seasar.Quill.QuillInjector.Inject(Object target) in 
C:\TEST\Source\s2container.net-1.4.0-RC3\source\Seasar.Quill\QuillInjector.cs:line 
191
    at Seasar.Quill.QuillInjector.InjectField(Object target, FieldInfo 
field, Type implType) in 
C:\TEST\Source\s2container.net-1.4.0-RC3\source\Seasar.Quill\QuillInjector.cs:line 
349
    at Seasar.Quill.QuillInjector.InjectField(Object target, FieldInfo 
field, ImplementationAttribute implAttr) in 
C:\TEST\Source\s2container.net-1.4.0-RC3\source\Seasar.Quill\QuillInjector.cs:line 
333
    at Seasar.Quill.QuillInjector.InjectField(Object target, FieldInfo 
field) in 
C:\TEST\Source\s2container.net-1.4.0-RC3\source\Seasar.Quill\QuillInjector.cs:line 
269
    at Seasar.Quill.QuillInjector.Inject(Object target) in 
C:\TEST\Source\s2container.net-1.4.0-RC3\source\Seasar.Quill\QuillInjector.cs:line 
191
    at Seasar.Quill.QuillInjector.InjectField(Object target, FieldInfo 
field, Type implType) in 
C:\TEST\Source\s2container.net-1.4.0-RC3\source\Seasar.Quill\QuillInjector.cs:line 
349
    at Seasar.Quill.QuillInjector.InjectField(Object target, FieldInfo 
field, ImplementationAttribute implAttr) in 
C:\TEST\Source\s2container.net-1.4.0-RC3\source\Seasar.Quill\QuillInjector.cs:line 
333
    at Seasar.Quill.QuillInjector.InjectField(Object target, FieldInfo 
field) in 
C:\TEST\Source\s2container.net-1.4.0-RC3\source\Seasar.Quill\QuillInjector.cs:line 
269
    at Seasar.Quill.QuillInjector.Inject(Object target) in 
C:\TEST\Source\s2container.net-1.4.0-RC3\source\Seasar.Quill\QuillInjector.cs:line 
191
    at BlazorApp5.Server.Controllers.WeatherForecastController.Get() in 
C:\Users\admin\source\repos\BlazorApp5\BlazorApp5\Server\Controllers\WeatherForecastController.cs:line 
52
    at Microsoft.Extensions.Internal.ObjectMethodExecutor.Execute(Object 
target, Object[] parameters)
    at 
Microsoft.AspNetCore.Mvc.Infrastructure.ActionMethodExecutor.SyncObjectResultExecutor.Execute(IActionResultTypeMapper 
mapper, ObjectMethodExecutor executor, Object controller, Object[] 
arguments)
    at 
Microsoft.AspNetCore.Mvc.Infrastructure.ControllerActionInvoker.InvokeActionMethodAsync()
    at 
Microsoft.AspNetCore.Mvc.Infrastructure.ControllerActionInvoker.Next(State& 
next, Scope& scope, Object& state, Boolean& isCompleted)
    at 
Microsoft.AspNetCore.Mvc.Infrastructure.ControllerActionInvoker.InvokeNextActionFilterAsync()

内部例外 1:
MissingMethodException: Method not found: 
'System.Reflection.Emit.AssemblyBuilder 
System.AppDomain.DefineDynamicAssembly(System.Reflection.AssemblyName, 
System.Reflection.Emit.AssemblyBuilderAccess)'.





-- 
このEメールはアバスト アンチウイルスによりウイルススキャンされています。
https://www.avast.com/antivirus
-------------- next part --------------
HTML$B$NE:IU%U%!%$%k$rJ]4I$7$^$7$?(B...
URL: <http://ml.seasar.org/archives/seasar-dotnet/attachments/20200529/bbb4b6da/attachment.html>


seasar-dotnet メーリングリストの案内