Base solution for your next web application

Activities of "sipoyraj"

I didnt find any Logs folder under web project

It is not showing any error But after running when clicking on the delete phone button, a popup is showing as an internal error occurred during your request.

My code for IPersonAppService is

using Abp.Application.Services; using Abp.Application.Services.Dto; using Abp.AutoMapper; using Abp.Domain.Repositories; using Abp.Linq.Extensions; using BCITS.BsmartWater.Storage; using System.Collections.Generic; using System.Linq; using Abp.Extensions; using System.Threading.Tasks; using System.ComponentModel.DataAnnotations; using BCITS.BsmartWater.Authorization; using Abp.Authorization; using System.Collections.ObjectModel; using System.Data.Entity;

namespace BCITS.BsmartWater.Tenants.PhoneBook { public interface IPersonAppService : IApplicationService { ListResultOutput<PersonListDto> GetPeople(GetPeopleInput input); Task CreatePerson(CreatePersonInput input);

    Task DeletePerson(IdInput input);

    Task DeletePhone(IdInput&lt;long&gt; input);

    Task&lt;PhoneInPersonListDto&gt; AddPhone(AddPhoneInput input);
}

[AutoMapTo(typeof(Phone))]
public class AddPhoneInput : IInputDto
{
    [Range(1, int.MaxValue)]
    public int PersonId { get; set; }

    [Required]
    public PhoneType Type { get; set; }

    [Required]
    [MaxLength(Phone.MaxNumberLength)]
    public string Number { get; set; }
}

[AutoMapTo(typeof(Person))]
public class CreatePersonInput : IInputDto
{
    [Required]
    [MaxLength(Person.MaxNameLength)]
    public string Name { get; set; }

    [Required]
    [MaxLength(Person.MaxSurnameLength)]
    public string Surname { get; set; }

    [EmailAddress]
    [MaxLength(Person.MaxEmailAddressLength)]
    public string EmailAddress { get; set; }
}



public class GetPeopleInput : IInputDto
{
    public string Filter { get; set; }
}

[AutoMapFrom(typeof(Person))]
public class PersonListDto : FullAuditedEntityDto
{
    public string Name { get; set; }

    public string Surname { get; set; }

    public string EmailAddress { get; set; }

    public Collection&lt;PhoneInPersonListDto&gt; Phones { get; set; }
}

[AutoMapFrom(typeof(Phone))]
public class PhoneInPersonListDto : CreationAuditedEntityDto
{
    public PhoneType Type { get; set; }

    public string Number { get; set; }
}

[AbpAuthorize(AppPermissions.Pages_Tenant_PhoneBook)]
public class PersonAppService : BsmartWaterAppServiceBase, IPersonAppService
{
    private readonly IRepository&lt;Person&gt; _personRepository;

    private readonly IRepository&lt;Phone, long&gt; _phoneRepository;


    public PersonAppService(IRepository&lt;Person&gt; personRepository)
    {
        _personRepository = personRepository;
    }


    public PersonAppService(IRepository&lt;Phone, long&gt; phoneRepository)
    {
        _phoneRepository = phoneRepository;
    }

    public ListResultOutput&lt;PersonListDto&gt; GetPeople(GetPeopleInput input)
    {
        var persons = _personRepository
            .GetAll()
            .Include(p => p.Phones)
            .WhereIf(
                    !input.Filter.IsNullOrEmpty(),
                p => p.Name.Contains(input.Filter) ||
                        p.Surname.Contains(input.Filter) ||
                        p.EmailAddress.Contains(input.Filter)
            )
            .OrderBy(p => p.Name)
            .ThenBy(p => p.Surname)
            .ToList();

        return new ListResultOutput&lt;PersonListDto&gt;(persons.MapTo&lt;List&lt;PersonListDto&gt;>());

   
    }

    [AbpAuthorize(AppPermissions.Pages_Tenant_PhoneBook_CreatePerson)]
    public async Task CreatePerson(CreatePersonInput input)
    {
        var person = input.MapTo&lt;Person&gt;();
        await _personRepository.InsertAsync(person);
    }

    [AbpAuthorize(AppPermissions.Pages_Tenant_PhoneBook_DeletePerson)]
    public async Task DeletePerson(IdInput input)
    {
        await _personRepository.DeleteAsync(input.Id);
    }

    public async Task DeletePhone(IdInput&lt;long&gt; input)
    {
        await _phoneRepository.DeleteAsync(input.Id);
    }
    public async Task&lt;PhoneInPersonListDto&gt; AddPhone(AddPhoneInput input)
    {
        var person = _personRepository.Get(input.PersonId);

        var phone = input.MapTo&lt;Phone&gt;();
        person.Phones.Add(phone);

        await CurrentUnitOfWork.SaveChangesAsync();

        return phone.MapTo&lt;PhoneInPersonListDto&gt;();
    }

}

}

Please solve my problem

Yeah.. I did it T

Thank you

Showing 1 to 3 of 3 entries