Open Source Web Application Framework for ASP.NET Core
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 

34 lines
1.3 KiB

using System.Collections.Generic;
using System.Threading.Tasks;
namespace Volo.Abp.MultiLingualObjects;
public interface IMultiLingualObjectManager
{
Task<TTranslation?> GetTranslationAsync<TMultiLingual, TTranslation>(
TMultiLingual multiLingual,
string? culture = null,
bool fallbackToParentCultures = true)
where TMultiLingual : IMultiLingualObject<TTranslation>
where TTranslation : class, IObjectTranslation;
Task<TTranslation?> GetTranslationAsync<TTranslation>(
IEnumerable<TTranslation> translations,
string? culture = null,
bool fallbackToParentCultures = true)
where TTranslation : class, IObjectTranslation;
Task<List<TTranslation?>> GetBulkTranslationsAsync<TTranslation>(
IEnumerable<IEnumerable<TTranslation>> translationsCombined,
string? culture = null,
bool fallbackToParentCultures = true)
where TTranslation : class, IObjectTranslation;
Task<List<(TMultiLingual entity, TTranslation? translation)>> GetBulkTranslationsAsync<TMultiLingual, TTranslation>(
IEnumerable<TMultiLingual> multiLinguals,
string? culture = null,
bool fallbackToParentCultures = true)
where TMultiLingual : IMultiLingualObject<TTranslation>
where TTranslation : class, IObjectTranslation;
}