如何以编程方式设置ImageResizer SQLReader插件v4的配置?

时间:2015-11-12 02:06:09

标签: plugins imageresizer

我之前使用的是ImageResizer的v3,但我现在正在尝试使用v4。

请参阅:http://imageresizing.net/docs/v4/plugins/sqlreader

我需要以编程方式为SQLReader插件设置几个配置选项。我有以前的代码,但它不再有效,说明找不到类型SqlReaderSettings:

        // SqlReader Plugin
        var fileSettings = new SqlReaderSettings
        {
            ConnectionString = ApplicationConfigurationContext.Current.DefaultSiteSqlConnectionString,
            PathPrefix = "~/Images",
            StripFileExtension = true,
            ImageIdType = SqlDbType.UniqueIdentifier,
            ImageBlobQuery = ???,
            ModifiedDateQuery = ???,
            ImageExistsQuery = ???,
            CacheUnmodifiedFiles = true,
            RequireImageExtension = true
        };

我无法使用web.config文件存储其中一些设置。具体而言,连接字符串可能会在运行时更改,并且由于公司策略而无法在web.config文件中以非加密方式存储。

感谢您的帮助。

<小时/> 更新:这是我现在使用的代码。我没有从Web.config添加这个插件,因为它是多余的。

        new SqlReaderPlugin
        {
            ConnectionString = ApplicationConfigurationContext.Current.DefaultSiteSqlConnectionString,
            ImageIdType = SqlDbType.VarChar,
            QueriesAreStoredProcedures = true,
            ModifiedDateQuery = "procFileImageResizerSelectTimestamps",
            ImageBlobQuery = "procFileImageResizerSelectData",
            ExposeAsVpp = true,
            VirtualFilesystemPrefix = filesUri,
            RequireImageExtension = true,
            StripFileExtension = true,
            CacheUnmodifiedFiles = true

        }.Install(Config.Current);

1 个答案:

答案 0 :(得分:1)

您可以直接将SqlReaderSettings替换为SqlReaderPlugin;它没有longer uses a separate settings class。几乎所有的类成员都应该是相同的,所以只需更改要初始化的类的名称。