[C#/ASP.NET MVC/.NETCORE] ViewComponent 클래스 : 저작권을 표시하는 뷰 컴포넌트 만들기
C#/ASP.NET MVC 2020. 10. 9. 00:08728x90
반응형
728x170
▶ ViewComponents/CopyrightViewComponent.cs
using Microsoft.AspNetCore. Mvc;
using System;
namespace TestProject.ViewComponents
{
/// <summary>
/// 저작권 뷰 컴포넌트
/// </summary>
public class CopyrightViewComponent : ViewComponent
{
//////////////////////////////////////////////////////////////////////////////////////////////////// Method
////////////////////////////////////////////////////////////////////////////////////////// Public
#region 호출하기 - Invoke()
/// <summary>
/// 호출하기
/// </summary>
/// <returns>뷰 컴포넌트 결과</returns>
public IViewComponentResult Invoke()
{
string viewName = "Default";
if(DateTime.Now.Second % 2 == 0)
{
viewName = "Alternate";
}
return View(viewName);
}
#endregion
}
}
728x90
▶ Views/Shared/Components/Copyright/Default.cshtml
<div class="text-center">
Copyright © @DateTime.Now.Year all right reserved.
</div>
300x250
▶ Views/Shared/Components/Copyright/Alternate.cshtml
<div class="text-center">
Copyright © @DateTime.Now.Year <em>Icodebroker</em> all right reserved.
</div>
▶ Controllers/TestController.cs
using Microsoft.AspNetCore.Mvc;
namespace TestProject.Controllers
{
/// <summary>
/// 테스트 컨트롤러
/// </summary>
public class TestController : Controller
{
//////////////////////////////////////////////////////////////////////////////////////////////////// Method
////////////////////////////////////////////////////////////////////////////////////////// Public
#region 인덱스 페이지 처리하기 - Index()
/// <summary>
/// 인덱스 페이지 처리하기
/// </summary>
/// <returns>액션 결과</returns>
public IActionResult Index()
{
return View();
}
#endregion
}
}
▶ Views/Test/Index.cshtml
@{
Layout = null;
}
<p>ViewComponent 클래스 : 저작권을 표시하는 뷰 컴포넌트 만들기</p>
<hr />
@await Component.InvokeAsync("Copyright")
728x90
반응형
그리드형(광고전용)
댓글을 달아 주세요