Jak aktualizovat hodnotu textarea (ASP.NET Základní MVC)

0

Otázka

Aby to bylo jednoduché:

Tohle je můj ServiceClass:

public class ServiceClass
{
        public string Request {get; set;}
        //other logic
        
        private void ExecuteCommand()
        {
            Request = "Some Text";
        }

}

Můj HomeController:

public class HomeController : Controller
{

        private readonly ILogger<HomeController> _logger;

        [BindProperty]
        public ServiceClassModel ServiceClass { get; set; }

        public HomeController(ILogger<HomeController> logger)
        {
            _logger = logger;
        }

        public IActionResult Index()
        {
            return View();
        }

        public IActionResult Privacy()
        {

            return View();
        }

        
}

Mám ServiceClassModel:

public class ServiceClassModel
{
    public string Request { get; set; }
    public string Response { get; set; }
    
    public ServiceClass Logic { get; set; }

}

A mám IndexView s TextArea:

<textarea id="story" name="story"
              rows="9" cols="80" style="margin-left: 10px; resize: none; margin-top: 10px">Here I want to update the text

Teď k mé otázce: jsem naprogramován, rozpoznávání řeči aplikace. Tam je vlastnost tzv. Žádost, kde můj projev je žádost uložena v ServiceClass. Chci, pokaždé, když se metoda ExecuteCommand(); je povolán, aby aktualizovat textarea v náhledovém zobrazení. Co je nejlepší způsob, jak to udělat?

Pomocí ASP.NET Základní MVC

asp.net-core c# html javascript
2021-11-23 21:08:21
1

Nejlepší odpověď

0

Dostanete odpověď pokaždé, když je podána žádost. Ale pokud ExecuteCommand() je spuštěna z jiné služby, aktuální Požadavek hodnoty zvyklý být tlačil dopředu, dokud nové žádosti.

Pokud požadavek je ten, spouštění ExecuteCommand, tento příklad by mohl fungovat: https://dotnetfiddle.net/5mVvb9

Pokud ne, doporučuji vám použít Pravidelné Dotazování. S tímto přístupem, můžete se periocal požadavek na BACKEND a zkontrolujte, zda se nová Žádost hodnotu.

2021-11-23 21:54:52

Dobře, děkujeme vám za vaši rychlou odpověď na mou otázku. Jen ujistěte se, že jste mě dobře: ExecuteCommand(); je volána, když klíčové slovo uznání je mluvený (jako "Hej Google") a pak odpověď na mou žádost je generována. Chci odpověď a můj projev se žádost zobrazí v okno bez kliknutí na tlačítko. Je Pravidelné Dotazování jediný způsob, jak? Pokud ano, mohl byste mi dát konkrétní příklad pro můj kód. Děkuji moc!
DarthYoda

Jediný způsob, jak zabránit Pravidelné Dotazování je, aby Požadavek POST s mluvené audio backend. Myslím, že tam by být služby zpracování zvuku a vrací řetězec odpověď, kterou chcete, aby se zobrazí v textarea. Pokud celý proces dokončí v jedné žádosti, než 10 sekund, pak není třeba, aby se dotazování. V opačném případě, pokud proces trvá více času, nebo pokud potřebujete další proces na pozadí fungovat zvuk, pak budete potřebovat volební strategie. V prvním případě, budete prostě muset PSÁT audio backend a zachytit de řetězec reakci na fill textarea.
punteriaCero

V jiných jazycích

Tato stránka je v jiných jazycích

Русский
..................................................................................................................
Italiano
..................................................................................................................
Polski
..................................................................................................................
Română
..................................................................................................................
한국어
..................................................................................................................
हिन्दी
..................................................................................................................
Français
..................................................................................................................
Türk
..................................................................................................................
Português
..................................................................................................................
ไทย
..................................................................................................................
中文
..................................................................................................................
Español
..................................................................................................................
Slovenský
..................................................................................................................