• Почему возникает ошибка в NpgsqlConnectionStringBuilder?

    @savva09 Автор вопроса
    автоконфиг, Василий Банников, я сам не лазил. возможно я не применил миграции?
  • Почему возникает ошибка в NpgsqlConnectionStringBuilder?

    @savva09 Автор вопроса
    Василий Банников, как я понял в ConnectionString не хватает пароля
  • Почему возникает ошибка в NpgsqlConnectionStringBuilder?

    @savva09 Автор вопроса
    Также появились как на
    https://learn.microsoft.com/en-us/aspnet/core/fund...

    IWriteToDBService & WriteToDBService

    IWriteToDBService

    public interface IWriteToDBService
        {
            public void WriteOccurrencesData(OccurrencesData data);
        }



    WriteToDBService

    public class WriteToDBService : IWriteToDBService
        {
            private readonly WebApiContext _context;
            public void WriteOccurrencesData(OccurrencesData data)
            {
                _context.OccurrencesData.AddAsync(data);
                _context.SaveChanges();
            }
    
            public WriteToDBService(WebApiContext context) 
            {
                _context = context;
            }
        }

  • Почему возникает ошибка в NpgsqlConnectionStringBuilder?

    @savva09 Автор вопроса
    Exception

    Npgsql.NpgsqlException (0x80004005): No password has been provided but the backend requires one (in SASL/SCRAM-SHA-256)
    at Npgsql.Internal.NpgsqlConnector.AuthenticateSASL(List`1 mechanisms, String username, Boolean async, CancellationToken cancellationToken)
    at Npgsql.Internal.NpgsqlConnector.Authenticate(String username, NpgsqlTimeout timeout, Boolean async, CancellationToken cancellationToken)
    at Npgsql.Internal.NpgsqlConnector.g__OpenCore|215_1(NpgsqlConnector conn, SslMode sslMode, NpgsqlTimeout timeout, Boolean async, CancellationToken cancellationToken, Boolean isFirstAttempt)
    at Npgsql.Internal.NpgsqlConnector.Open(NpgsqlTimeout timeout, Boolean async, CancellationToken cancellationToken)
    at Npgsql.PoolingDataSource.OpenNewConnector(NpgsqlConnection conn, NpgsqlTimeout timeout, Boolean async, CancellationToken cancellationToken)
    at Npgsql.PoolingDataSource.g__RentAsync|28_0(NpgsqlConnection conn, NpgsqlTimeout timeout, Boolean async, CancellationToken cancellationToken)
    at Npgsql.NpgsqlConnection.g__OpenAsync|45_0(Boolean async, CancellationToken cancellationToken)
    at Npgsql.NpgsqlConnection.Open()
    at Microsoft.EntityFrameworkCore.Storage.RelationalConnection.OpenDbConnection(Boolean errorsExpected)
    at Microsoft.EntityFrameworkCore.Storage.RelationalConnection.OpenInternal(Boolean errorsExpected)
    at Microsoft.EntityFrameworkCore.Storage.RelationalConnection.Open(Boolean errorsExpected)
    at Microsoft.EntityFrameworkCore.Update.Internal.BatchExecutor.Execute(IEnumerable`1 commandBatches, IRelationalConnection connection)
    at Microsoft.EntityFrameworkCore.Storage.RelationalDatabase.SaveChanges(IList`1 entries)
    at Microsoft.EntityFrameworkCore.ChangeTracking.Internal.StateManager.SaveChanges(IList`1 entriesToSave)
    at Microsoft.EntityFrameworkCore.ChangeTracking.Internal.StateManager.SaveChanges(StateManager stateManager, Boolean acceptAllChangesOnSuccess)
    at Microsoft.EntityFrameworkCore.ChangeTracking.Internal.StateManager.<>c.b__107_0(DbContext _, ValueTuple`2 t)
    at Npgsql.EntityFrameworkCore.PostgreSQL.Storage.Internal.NpgsqlExecutionStrategy.Execute[TState,TResult](TState state, Func`3 operation, Func`3 verifySucceeded)
    at Microsoft.EntityFrameworkCore.ChangeTracking.Internal.StateManager.SaveChanges(Boolean acceptAllChangesOnSuccess)
    at Microsoft.EntityFrameworkCore.DbContext.SaveChanges(Boolean acceptAllChangesOnSuccess)
    at Microsoft.EntityFrameworkCore.DbContext.SaveChanges()
    at WebApi.Controllers.WriteToDBService.WriteOccurrencesData(OccurrencesData data) in D:\Projects\С#\WebApi\WebApi\Controllers\WriteToDBService.cs:line 12
    at WebApi.Controllers.OccurrenceСounter.CollectOccurrences(VKUsersPosts posts) in D:\Projects\С#\WebApi\WebApi\Controllers\OccurrenceСounter.cs:line 59
    at WebApi.Controllers.HomeController.JsonString(Int32 ind) in D:\Projects\С#\WebApi\WebApi\Controllers\HomeController.cs:line 46
    at Microsoft.AspNetCore.Mvc.Infrastructure.ActionMethodExecutor.TaskOfIActionResultExecutor.Execute(ActionContext actionContext, IActionResultTypeMapper mapper, ObjectMethodExecutor executor, Object controller, Object[] arguments)
    at Microsoft.AspNetCore.Mvc.Infrastructure.ControllerActionInvoker.g__Awaited|12_0(ControllerActionInvoker invoker, ValueTask`1 actionResultValueTask)
    at Microsoft.AspNetCore.Mvc.Infrastructure.ControllerActionInvoker.g__Awaited|10_0(ControllerActionInvoker invoker, Task lastTask, State next, Scope scope, Object state, Boolean isCompleted)
    at Microsoft.AspNetCore.Mvc.Infrastructure.ControllerActionInvoker.Rethrow(ActionExecutedContextSealed context)
    at Microsoft.AspNetCore.Mvc.Infrastructure.ControllerActionInvoker.Next(State& next, Scope& scope, Object& state, Boolean& isCompleted)
    at Microsoft.AspNetCore.Mvc.Infrastructure.ControllerActionInvoker.g__Awaited|13_0(ControllerActionInvoker invoker, Task lastTask, State next, Scope scope, Object state, Boolean isCompleted)
    at Microsoft.AspNetCore.Mvc.Infrastructure.ResourceInvoker.g__Awaited|20_0(ResourceInvoker invoker, Task lastTask, State next, Scope scope, Object state, Boolean isCompleted)
    at Microsoft.AspNetCore.Mvc.Infrastructure.ResourceInvoker.g__Awaited|17_0(ResourceInvoker invoker, Task task, IDisposable scope)
    at Microsoft.AspNetCore.Mvc.Infrastructure.ResourceInvoker.g__Awaited|17_0(ResourceInvoker invoker, Task task, IDisposable scope)
    at Microsoft.AspNetCore.Routing.EndpointMiddleware.g__AwaitRequestTask|6_0(Endpoint endpoint, Task requestTask, ILogger logger)
    at Microsoft.AspNetCore.Authorization.AuthorizationMiddleware.Invoke(HttpContext context)
    at Swashbuckle.AspNetCore.SwaggerUI.SwaggerUIMiddleware.Invoke(HttpContext httpContext)
    at Swashbuckle.AspNetCore.Swagger.SwaggerMiddleware.Invoke(HttpContext httpContext, ISwaggerProvider swaggerProvider)
    at Microsoft.AspNetCore.Authentication.AuthenticationMiddleware.Invoke(HttpContext context)
    at Microsoft.AspNetCore.Diagnostics.DeveloperExceptionPageMiddlewareImpl.Invoke(HttpContext context)


    окей, я переделал. Теперь OccurrenceCounter нестатичный, а в конструкторе есть DBContext:
    Code

    кусочек OccurrencesCounter:
    public class OccurrenceСounter
        {
    
            private readonly WriteToDBService writeToDB;
    
            public OccurrenceСounter(WriteToDBService writeToDB)
            {
                this.writeToDB = writeToDB;
            }
    
            public async Task<OccurrencesData> CollectOccurrences(VKUsersPosts posts)
            {
                await WriteStartLog();
    
                OccurrencesData result = new(posts.response.items[0].owner_id.ToString());
    
                for (int j = 0; j < 5; j++)
                {
                    for (int i = 0; i < 32; i++)
                    {
                        if (i == 6) result.Data[j].Add('ё', 0);
                        result.Data[j].Add((char)(1072 + i), 0);
                    }
                }
    
                for (int j = 0; j < 5; j++)
                {
                    string text = posts.response.items[j].text;
                    RemoveSalt( ref text ); 
    
                    FindOccurrences(ref result.Data[j], text );
                }
    
    
                await WriteEndLog();
    
                result.UpdateJsonString();
    
                writeToDB.WriteOccurrencesData(result);
    
                return result;
            }
    
        }


    HomeController:

    public class HomeController : Controller
        {
    
            private WebApiContext Context { get; set; }
    
            public HomeController(WebApiContext context)
            {
                Context = context;
            }
    
            [HttpGet("{ind}")]
            public async Task< IActionResult> JsonString(int ind) 
            {
                GetterData getter = new GetterData();
                VKUsersPosts posts = await getter.GetLast5Posts("738489146");
    
                OccurrenceСounter сounter2 = new(new(Context));
    
                OccurrencesData dicts = await сounter2.CollectOccurrences(posts);
    
                try
                {
                    return Ok( JsonSerializer.Deserialize(dicts.JsonString, typeof(Dictionary<char, int>[])));
                }
                catch
                {
                    return NotFound();
                }
            }
        }

  • Почему возникает ошибка в NpgsqlConnectionStringBuilder?

    @savva09 Автор вопроса

    Тебе следует доставать DbContext через DI, который ты сам же и настроил

    А как к нему после этого в коде обратиться?

    Я пробовал это сделать, но пока нашёл только такой способ
  • Как правильно создать контроллер на основе Entity?

    @savva09 Автор вопроса
    Спасибо, Роман, не знал. Действовал по тутору и знание JsonSerializer пока на уровне Дзен программирования
  • Как правильно создать контроллер на основе Entity?

    @savva09 Автор вопроса
    нет, убрать его я не могу, только если нет другого простого способа десериализовать из того что уже имеется. Придется переписывать все. А переопределить что-то мне не дает vs, там только Equals и еще 2 метода object, остальне для переопределения невозможно поскольку json serializer сам генерит код в SerContext
  • Куда расти дальше?

    @savva09 Автор вопроса
    Василий Банников, для начала планирую только на лето, но потом "на пол ставки" вечером
  • Почему сложность алгоритма (n+2n+3n+…+n⋅n) = O(n³)?

    @savva09 Автор вопроса
    но до ответа n в 3 я никак не дохожу
  • Почему сложность алгоритма (n+2n+3n+…+n⋅n) = O(n³)?

    @savva09 Автор вопроса
    мой косяк, я имел ввиду алгоритм решения. Тогда количество базовых операций(обычно берется операция в цикле) будет = n
  • Куда расти дальше?

    @savva09 Автор вопроса

    Лучше инвестируй своё время в образование - сейчас тебе это даст гораздо больше выгоды, чем раннее начало карьеры.


    это не столь карьера, сколько опыт и понимание как это работает. Мне очень не хватает опыта и командной работы именно по программированию
  • Куда расти дальше?

    @savva09 Автор вопроса
    Пояснение: мне 14, намечается возможность поработать. Хотелось бы знать чего не хватает и что надо улучшить
  • Что значит посчитать вхождение одинаковых букв в тексте?

    @savva09 Автор вопроса
    То есть мне нужно сделать подсчет по буквам в каждому посте? Спасибо
  • Где находятся теги описанные в @{ }?

    @savva09 Автор вопроса
    спасибо большое, я разобрался:
    @page
    @model WebApplication1.Pages.CreateModel
    @{
        if (Request.Method == "POST") {
            string text = Request.Form["test"];
    
            <text>
              You entered: @text
            </text>
        }
    }
    
    
    
    <head>
        <title>Customer Form</title>
    </head>
    <body>
        <form method="post" >
        <fieldset>
              <div>
                  <input type="text" value="" name="test"/>
              </div>
            <div>
            <label>&nbsp;</label>
            <input type="submit" value="Submit" class="submit" />
            </div>
        </fieldset>
        </form>
    </body>


    не хватало
  • Где находятся теги описанные в @{ }?

    @savva09 Автор вопроса
    минуту, не обновил вовремя
  • Где находятся теги описанные в @{ }?

    @savva09 Автор вопроса
    я польностью скопировал оттуда код, и оно что мне странно работеат
  • Где находятся теги описанные в @{ }?

    @savva09 Автор вопроса
    океееей я его добавил, запрос изменил на пост, но он не реагирует
  • Где находятся теги описанные в @{ }?

    @savva09 Автор вопроса
    в любом случае пишет некорректный тип контента
  • Где находятся теги описанные в @{ }?

    @savva09 Автор вопроса
    присваивать strign значение инпута вроде нельзя, но если сделать @Request.Form["test"] в теге, то оно не работает