亚洲激情专区-91九色丨porny丨老师-久久久久久久女国产乱让韩-国产精品午夜小视频观看

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

如何分析ABP設置管理

發布時間:2022-01-15 11:49:06 來源:億速云 閱讀:179 作者:柒染 欄目:大數據

如何分析ABP設置管理,很多新手對此不是很清楚,為了幫助大家解決這個難題,下面小編將為大家詳細講解,有這方面需求的人可以來學習下,希望你能有所收獲。

ABP的設置管理。

  開始

如何分析ABP設置管理

  首先定義了一個FileOptions類,其中包含了幾個配置,然后在需要的地方中注入IOptions就可以使用這些信息了。

  當然,模塊啟動時可以做一些配置修改,比如:

如何分析ABP設置管理

  無論是配置文件還是這種代碼形式的配置,都是程序層面的修改;有些配置不太適合這樣做,比如這里的AllowedMaxFileSize和AllowedUploadFormats,它們應該在應用界面上,可以讓管理員自行修改。下面就來改造一下程序。

  定義設置

  使用設置之前需要先定義它,不同的模塊可以擁有不同的設置。

  modules\file-management\src\Xhznl.FileManagement.Domain\Settings\FileManagementSettingDefinitionProvider.cs:

  public class FileManagementSettingDefinitionProvider : SettingDefinitionProvider

  {

  public override void Define(ISettingDefinitionContext context)

  {

  /* Define module settings here.

  * Use names from FileManagementSettings class.

  */

  context.Add(new SettingDefinition(

  FileManagementSettings.AllowedMaxFileSize,

  "1024",

  L("DisplayName:FileManagement.AllowedMaxFileSize"),

  L("Description:FileManagement.AllowedMaxFileSize")

  )

  .WithProperty("Group1", "File")

  .WithProperty("Group2", "Upload")

  .WithProperty("Type", "number"),

  new SettingDefinition(

  FileManagementSettings.AllowedUploadFormats,

  ".jpg,.jpeg,.png,.gif,.txt",

  L("DisplayName:FileManagement.AllowedUploadFormats"),

  L("Description:FileManagement.AllowedUploadFormats")

  )

  .WithProperty("Group1", "File")

  .WithProperty("Group2", "Upload")

  .WithProperty("Type", "text")

  );

  }

  private static LocalizableString L(string name)

  {

  return LocalizableString.Create(name);

  }

  }

  以上代碼定了了2個配置:AllowedMaxFileSize和AllowedUploadFormats,設置了它們的默認值、名稱和詳細說明。因為本項目使用了EasyAbp的SettingUi模塊,所以會有一些Group1,Group2之類的字段,具體介紹可以參考Abp.SettingUi

  使用設置

  想讀取設置信息,只需注入ISettingProvider即可。因為父類ApplicationService中已經注入,所以這里直接使用SettingProvider就好。獲取到配置,然后就可以做一些邏輯處理,比如判斷上傳文件的大小和格式是否合法:

  public class FileAppService : FileManagementAppService, IFileAppService

  {

  ......

  [Authorize]

  public virtual async Task CreateAsync(FileUploadInputDto input)  鄭州人流醫院http://www.xasg120.net/

  {

  var allowedMaxFileSize = await SettingProvider.GetAsync(FileManagementSettings.AllowedMaxFileSize);//kb

  var allowedUploadFormats = (await SettingProvider.GetOrNullAsync(FileManagementSettings.AllowedUploadFormats))

  ?.Split(",", StringSplitOptions.RemoveEmptyEntries);

  if (input.Bytes.Length > allowedMaxFileSize * 1024)

  {

  throw new UserFriendlyException(L["FileManagement.ExceedsTheMaximumSize", allowedMaxFileSize]);

  }

  if (allowedUploadFormats == null || !allowedUploadFormats.Contains(Path.GetExtension(input.Name)))

  {

  throw new UserFriendlyException(L["FileManagement.NotValidFormat"]);

  }

  ......

  }

  }

  前端設置界面:

如何分析ABP設置管理

  下面可以隨便修改下設置,進行測試:  如何分析ABP設置管理

看完上述內容是否對您有幫助呢?如果還想對相關知識有進一步的了解或閱讀更多相關文章,請關注億速云行業資訊頻道,感謝您對億速云的支持。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

abp
AI

河源市| 通渭县| 织金县| 伊宁县| 双江| 陆良县| 汕尾市| 大安市| 广州市| 乌拉特中旗| 卓尼县| 晋中市| 米易县| 焉耆| 鹿邑县| 承德市| 石台县| 油尖旺区| 延津县| 汝阳县| 西华县| 兴山县| 四川省| 思南县| 嘉鱼县| 淄博市| 通榆县| 南陵县| 昌黎县| 申扎县| 乃东县| 昌乐县| 宜丰县| 新绛县| 北海市| 开化县| 舟曲县| 江门市| 清水县| 大庆市| 临海市|