묻고 답해요
141만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
해결됨[C#/.NET 8.0]어서와, Blazor Server는 처음이지?
화면 갱신
제가 윈폼만 하다가 웹으로 개발할 일이 있다보니 Blazor 수업을 수강하는데 수업 내용이 전체적으로 사수한테 배우는 느낌이어서 좋네요. ㅎㅎ궁금한게 있어서 질문하나 드립니다.메인 서버에서 여러 디바이스의 상태를 웹페이지에 계속 업데이트 해야 하는데 클라이언트가 여러명이 됩니다.데이타 갱신시 서버에서 갱신되는 데이타를 프론트에서 갱신되게 하는 방법이 대략 어떻게 되나요?
-
미해결[C#/.NET 8.0]어서와, Blazor Server는 처음이지?
ASP.NET Core SignalR을 사용하는 방식의 장점이 있나요?
blazor server 방식은 기존의 asp.net 웹서버프로그래밍과 동일한 방식인 것으로 보입니다.기존의 웹서버프로그래밍을 공부할때는 http 프로토콜을 이용해서 request, response를 하므로, stateless, 헤더 정보, get, post 등에 대해서 학습을 했었던 것으로 기억합니다. 그때의 방식과 내부적으로 SignalR을 사용하는 소켓방식과의 차이점을 알고 싶습니다.클라이언트의 요청이 서버에 request로 전달이 되고, 서버가 실행되어서 렌더링한 결과를, 클라이언트에게 response 해주는 것이 아닌가요? 아...근데 새로 페이지를 전부 그리는 것이 아니고, 해당 변경부분만 렌더링해서 response를 해주는 것으로 아는데...소켓과 http 프로토콜과의 역할을 구분하여 알고 싶습니다.
-
해결됨[C#/.NET 8.0]어서와, Blazor Server는 처음이지?
Blazor web app 생성할때 질문있습니다.
렌더링이 어디서 일어나느냐에 따라서 블레이저 서버와 웹어셈블리로 프로젝트를 구분하는데,.net 8.0 부터 blazor web app 이 추가된 것이라고 설명해주셨는데요...프로젝트 생성시, 샘플로 있던 페이지 중에 counter 증가되는 것만 클라이언트쪽에 생성되고, 나머지 페이지들은 서버쪽에 생성되었습니다. 클라이언트 쪽에는 DB 연결과 상관없는 기존의 자바스크립트로 동작하는 것이 주로 오는 것이고,서버 쪽에는 DB 사용하는 페이지들이 존재하는 것인지 궁금합니다. 즉, 어떤 것을 기준으로 클라이언트와 서버를 나누는 것인지 궁금합니다. blazor WASM을 선택해도, 페이지에 연결되는 DB 처리를 위해서는 API로 서버를 호출해서 결과를 받아와서 바인딩을 해준다면...blazor Server로 작성해서 해당 부분을 바인딩하는 것과 차이가 어떤 것인지 궁금합니다.또한, 실제 실무에서는 어떤 방식이 더 선호되는지 궁금합니다.
-
해결됨[C#/.NET 8.0]어서와, Blazor Server는 처음이지?
솔루션 배포(게시) 부분에서 질문있습니다.
작성된 솔루션 파일을 게시할 때, 콘솔 exe가 실행되면서 어떻게 렌더링이 되고, 실행이 되는지 잘 모르겠습니다.즉, Blazor 서버 앱의 실행 방법과 게시할 때 포함시켜야 하는 범위를 알고 싶습니다.솔루션에서 게시를 선택해서 로컬에 생성된 폴더를 보면, IIS 에서부터의 실행방법을 잘 모르겠습니다. 게시할 때 WASM 방식과 서버방식의 차이를 이해하기 쉽게 다시한번 설명해주셨으면 합니다.감사합니다.
-
해결됨[C#/.NET 8.0]어서와, Blazor Server는 처음이지?
razor 문법에서의 @표기
강의 중의 코드인데요,.razor 파일에서 C# 코드를 사용할때 @를 사용하는데,@Click = "메서드명" Click = "@메서드명"Click = "메서드명"@bind-Value="@value"등등 모든 방법을 다 허용하는 것인지, 권장하는 방법은 어떤 것인지 알고 싶습니다. Orientation, Data 은 RadizenStack 클래스의 속성인거 같은데...@bind-Value 는 어떤 것으로 정의된 건가요?기본적으로 정의된 항목 PageTitle 같은 것들은 어디에 몇가지로 정의된 기본 클래스인지도 궁금합니다.전반적으로 Blazor 페이지에 대한 구조와 기본 틀에 대한 설명이나 자료를 조금 더 가르쳐주셨으면 좋겠습니다.
-
해결됨[C#/.NET 8.0]어서와, Blazor Server는 처음이지?
Grid 컴포넌트 사용에 대해서 질문있습니다.
asp.net 의 WebForm 에서도 DataGrid, DataList, Repeator 등이 있었습니다. DataGrid, DataList 는 기능이 많아 보이지만, 기능이 많은 것만큼 렌더링 된 데이터의 사이즈가 너무 커져서 실무에서는 속도 문제로 결국 html 태그를 적극 활용하면서 Repeator를 사용했었습니다.혹시 QuickGrid , RadzenGrid 등도 그런 문제가 발생하는 것은 아닐까 해서요...샘플로 작성되는 weather 페이지처럼 html 태그가 결국 사용되는게 아닐까 싶은데요...결국은 모든 데이터를 다 조회해서 갖고 있는게 아니라, 해당 페이지에 대한 데이터만 갖고, 페이징 네비게이션 부분은 별도로 코딩하게 된다면...그리드의 정렬, 필터 기능은 사용 못하는게 아닐까 싶습니다.혹시 속도 비교를 해 놓은 것이 있는지 궁금합니다.제가 아직 WASM 방식과 서버 방식을 잘 이해를 못하고 있는데요,제가 기존에 했었던 방식(asp.net webform, mvc)은 서버 방식이었을 것으로 이해하고 있습니다.WASM 방식이 된다면 Grid 사용이 달라지는 건가요???
-
해결됨[C#/.NET 8.0]어서와, Blazor Server는 처음이지?
홈페이지 실행
안녕하세요. 궁금한 점이 있어서 질문을 남깁니다!현재 제 컴퓨터의 기본 브라우저가 웨일로 되어있습니다.2강에서 프로젝트를 만들고 난 후, 시작을 했을 때, 웨일에서는 개인 정보 보호 오류라고 뜨고, 크롬에서는 문제없이 작동이 됩니다.혹시 이게 어떤 것 때문에 그러는지 알 수 있을까요?요즘 눈도 많이 오고 날씨도 추운데 항상 감기조심하세요.
-
해결됨[C#/.NET 8.0]어서와, Blazor Server는 처음이지?
? 코딩하는 이유
int? 나 <string, object>? 뒤에 ?를 넣는 이유가 뭔가요?
-
미해결[C#과 유니티로 만드는 MMORPG 게임 개발 시리즈] Part6: 웹 서버
EFCore 포렌키 설정 관련 질문(Entity Framework Code First One-to-Many Relationship)
public class UserData { //public int Id { get; set; } [Key] public string UserId { get; set; } public string? Token { get; set; } [MaxLength(32)] public string? UserName { get; set; } public DateTime? CreateTime { get; set; } public BanData BanData { get; set; } public List<MailData> MailDatas { get; set; } public List<GetMailData> GetMailDatas { get; set; } } public class BanData { public int Id { get; set; } public DateTime Start { get; set; } public DateTime End { get; set; } public int State { get; set; } public string DescKey { get; set; } // Foreign Key ////1:1 방향일 경우 한쪽이 아이디까지 물고 있어야함 public string UserDataUserId { get; set; } [JsonIgnore] public UserData UserData { get; set; } } public class MailData { /// <summary> 우편물 구분 값 </summary> public int Id { get; set; } /// <summary> 발송일 </summary> public DateTime SendDate { get; set; } /// <summary> 우편물 받아야하는 기간 </summary> public DateTime EndDate { get; set; } /// <summary> 우편 내용물 </summary> public string Body { get; set; } /// <summary> 보낸이 ex)GM, DEV 등등 </summary> public string Sender { get; set; } // Foreign Key public string UserDataUserId { get; set; } [JsonIgnore] public UserData UserData { get; set; } } 이렇게 코드가 있을 경우 MailData -> UserData로 연동은 잘 됩니다다만 DB 테이블에 MailData가 생성되는데 제가 원하는 것은 UserData 테이블에 MailDatas 가 생성되는 것입니다 다만 위 코드처럼 처리를 할 경우 MailData 테이블에 모든 유저들의 메일 정보가 저장되고 UserData에서 긁어오는 것으로 파악되는데 맞을까여?만약 이렇게하여 모든유저들의 정보를 처리하는게 더 좋은 방식인지 UserData 테이블에 JSON으로 메일을 처리하는것이 좋은 방식인지 궁금합니다
-
해결됨[C#/.NET 8.0]어서와, Blazor Server는 처음이지?
BackUp DB > Failed
PostgreSQL 여러번 지우고 재설치 하여 backup DB restore 결과가 Failed 나오네요 문제가 뭘까요?
-
미해결[C#과 유니티로 만드는 MMORPG 게임 개발 시리즈] Part6: 웹 서버
DB 설정 관련해서 질문 드립니다
[Table("UserTable")] public class UserData { [Key] public string UserId { get; set; } public string? Token { get; set; } [MaxLength(32)] public string? UserName { get; set; } public DateTime? CreateTime { get; set; } public BanData? Ban { get; set; } public ICollection<MailData> OwnMails { get; set; } public ICollection<GetMailData> GetMails { get; set; } } [Serializable] public class BanData { public DateTime Start { get; set; } public DateTime End { get; set; } public int State { get; set; } public string DescKey { get; set; } // Foreign Key public string UserId { get; set; } public UserData User { get; set; } } public class MailData { /// <summary> 우편물 구분 값 </summary> [Key] public long Id { get; set; } /// <summary> 발송일 </summary> public DateTime SendDate { get; set; } /// <summary> 우편물 받아야하는 기간 </summary> public DateTime EndDate { get; set; } /// <summary> 우편 내용물 </summary> public string Body { get; set; } /// <summary> 보낸이 ex)GM, DEV 등등 </summary> public string Sender { get; set; } // Foreign Key public string UserId { get; set; } public UserData User { get; set; } } /// <summary> 우편물 획득 시 </summary> public class GetMailData { /// <summary> 우편물 구분 값 </summary> [Key] public long Id { get; set; } /// <summary> 우편물 시간제한에 의한 삭제 </summary> public bool IsTimeOut { get; set; } /// <summary> 받은 날 </summary> public DateTime GetDate { get; set; } /// <summary> 우편 내용물 </summary> public string Body { get; set; } /// <summary> 보낸이 ex)GM, DEV 등등 </summary> public string Sender { get; set; } // Foreign Key public string UserId { get; set; } public UserData User { get; set; } }이렇게 SharedData.Models 정의를 해서 사용을 하고자 합니다 UserData에서만 DB 컬럼으로 활용을 하고싶습니다 ApplicationDbContext.csprotected override void OnModelCreating(ModelBuilder modelBuilder) { base.OnModelCreating(modelBuilder); modelBuilder.Ignore<BanData>(); modelBuilder.Ignore<MailData>(); modelBuilder.Ignore<GetMailData>(); }에는 DB로 만들어지지 않았으면 해서 예외처리를 추가했습니다 UserTableUserIdTokenUserNameCreateTimeBanData BanICollection<MailData> OwnMailsICollection<GetMailData> GetMails이런식으로 생성하게 하려면 어떻게해야 하나요?
-
해결됨[C#/.NET 8.0]어서와, Blazor Server는 처음이지?
수업자료가 어디있는 거죠?
위치를 모르겠네요ㅠ
-
해결됨[C#/.NET 6.0]어서와, Blazor WebAssembly는 처음이지?
PostgreSQL 16 사용 중인데 복원시 에러 가 발생합니다.
학습 자료에 올라와있는 자료로 복원시 에러가 발생합니다.
-
미해결[C#과 유니티로 만드는 MMORPG 게임 개발 시리즈] Part6: 웹 서버
10분 48초 부근에 안 되는 사람들 참고하세요
css 파일도 필요할 확률이 높습니다(기본적으론 생성 안 됨).최신 버전으로 공부하고 있는데 거의 숨은 그림 찾기네요.버전이 바뀌면 달라질 수도 있습니다.
-
미해결[C#과 유니티로 만드는 MMORPG 게임 개발 시리즈] Part6: 웹 서버
ArgumentException: Keyword not supported: 'trust server certificate'.
처음 appsettings.json에서 DefaultConnection의 값을 이름만 바꿀경우는 저 에러가 뜨지 않는데속성에서 연결 문자열의 값을 복사해서 붙여넣을 경우프로그램 실행 후 Register 할 경우 저 에러가 계속 뜹니다어떻게 해결해야 하나요 ?
-
미해결[C#과 유니티로 만드는 MMORPG 게임 개발 시리즈] Part6: 웹 서버
Need Summary 부분 질문있습니다!
먼저FetchData.razor 에서 <EditForm Model="_addForecast" OnInvalidSubmit="SaveForecast"> @* Form Validation 기능 ON*@ <DataAnnotationsValidator /> @* 에러가 있으면 메시지 상세 출력*@ <ValidationSummary /> <label for="TemperatureC">TemperatureC</label> <InputNumber class="form-control" placeholder="TemperatureC" @bind-Value="_addForecast.TemperatureC" /> <label for="Summary">Summary</label> <InputText class="form-control" placeholder="Summary" @bind-Value="_addForecast.Summary" /> <br /> <button class="btn btn-primary" type="submit">Save</button> </EditForm>WeatherForecast에서 public class WeatherForecast { public DateTime Date { get; set; } [Required(ErrorMessage = "Need TemperatureC!")] [Range(typeof(int),"-100","100")] public int TemperatureC { get; set; } public int TemperatureF => 32 + (int)(TemperatureC / 0.5556); [Required(ErrorMessage = "Need Summary!")] [StringLength(10, MinimumLength = 2, ErrorMessage = "2~10")] public string Summary { get; set; } } 이렇게 해주었는데Need Summary가 뜨지 않는데 이유를 알수 있을까요?
-
미해결[C#과 유니티로 만드는 MMORPG 게임 개발 시리즈] Part6: 웹 서버
계속 똑같은 에러가 뜹니다 ㅠㅠ
An unhandled exception occurred while processing the request.InvalidOperationException: The view 'Index' was not found. The following locations were searched:/Views/Home/Index.cshtml/Views/Shared/Index.cshtml 라고 계속 뜨는데저는 Shared폴더 자체도 없는데 계속 다른곳에서 파일을 찾는것 같은데 어떻게 해결해야하나요?
-
미해결[C#과 유니티로 만드는 MMORPG 게임 개발 시리즈] Part6: 웹 서버
이번 강의 코드를 받을 수 있을까요?
grouping 예제 부분을 실행하는데 있어 playersByLevel에 동일하게 작성하였는데로컬 부분에 해당 이름을 작성하고 열었는데 화면과는 다르게 Players도 가지지 않고 있고 Non-Public members로 분류되어서 나오네요.
-
미해결[C#과 유니티로 만드는 MMORPG 게임 개발 시리즈] Part6: 웹 서버
ATOM이 2022년 12월 15일 기준 종료되었네요
어쩔수없이 VisualStudio Code를 이용해 따라가려하는데 html로 작성만 가능하면 될까요?
-
미해결[C#과 유니티로 만드는 MMORPG 게임 개발 시리즈] Part6: 웹 서버
CounterState 질문입니다.
순수한 궁금증으로 여쭤뵙습니다.혹시 해당 cs를 구현하지않고 private static int currentCount를 사용한다면 유저마다 보이는 currentCounter가 다를까요? 아니면 공통적으로 서버가 닫히기전까지 모든 유저가 동일한 숫자가 보일까요?