SqlConnection.InfoMessage停止触发

时间:2016-09-15 19:02:02

标签: c# sql-server entity-framework

当我将存储过程的EF模型映射设置为复杂类型时,我将丢失存储过程输出的消息。

CREATE PROCEDURE dbo.[TestPrints]
AS
    PRINT 'hello world 1'

    SELECT 1 AS 'Test Column'

    PRINT 'hello world 2'
RETURN 0

var res = new Entities();
var sqlConn = (SqlConnection)res.Database.Connection;
sqlConn.InfoMessage += (obj, e) => { msgs.Add(e.Message); };

当存储过程映射到复杂类型时,msgs包含1个条目:

'hello world 1'

如果存储过程未映射到复杂类型,msgs包含2个条目:

'hello world 1' 
'hello world 2'

Screen Print of EF Mapping

Sample Code

0 个答案:

没有答案