Cú pháp cshtml

In today’s post I’m going to discuss two useful syntactical features of the new Razor view-engine – the @: and syntax support.

Mã hóa chất lỏng bằng dao cạo

ASP. NET MVC 3 cung cấp tùy chọn công cụ xem mới có tên là “Razor” [ngoài tùy chọn hiện có. công cụ xem aspx]. Bạn có thể tìm hiểu thêm về Razor, lý do chúng tôi giới thiệu nó và cú pháp mà nó hỗ trợ từ bài đăng trên blog Giới thiệu Razor của tôi.  

Razor giảm thiểu số lượng ký tự và số lần nhấn phím cần thiết khi viết mẫu xem và cho phép quy trình mã hóa nhanh, trôi chảy. Không giống như hầu hết các cú pháp mẫu, bạn không cần phải ngắt đoạn mã của mình để biểu thị rõ ràng phần bắt đầu và phần cuối của các khối máy chủ trong HTML của bạn. Trình phân tích cú pháp Razor đủ thông minh để suy ra điều này từ mã của bạn. Điều này cho phép một cú pháp nhỏ gọn và biểu cảm, rõ ràng, nhanh chóng và thú vị để gõ

Ví dụ: đoạn mã Dao cạo bên dưới có thể được sử dụng để lặp lại danh sách sản phẩm

Khi chạy, nó tạo ra đầu ra như

 

One of the techniques that Razor uses to implicitly identify when a code block ends is to look for tag/element content to denote the beginning of a content region.  For example, in the code snippet above Razor automatically treated the inner

  • block within our foreach loop as an HTML content block because it saw the opening
  • tag sequence and knew that it couldn’t be valid C#. 

    Kỹ thuật cụ thể này – sử dụng các thẻ để xác định các khối nội dung trong mã – là một trong những thành phần chính giúp Razor trở nên rõ ràng và hiệu quả với các tình huống liên quan đến tạo HTML

    Sử dụng @. để chỉ ra rõ ràng sự bắt đầu của nội dung

    Tuy nhiên, không phải tất cả các khối chứa nội dung đều bắt đầu bằng thẻ phần tử thẻ và có những tình huống mà trình phân tích cú pháp Razor không thể phát hiện ngầm một khối nội dung

    Razor giải quyết vấn đề này bằng cách cho phép bạn chỉ rõ phần đầu của một dòng nội dung bằng cách sử dụng @. chuỗi ký tự trong một khối mã. Các @. chuỗi chỉ ra rằng dòng nội dung theo sau phải được coi là một khối nội dung

    Như một ví dụ thực tế hơn, đoạn mã dưới đây minh họa cách chúng tôi có thể xuất ra thông báo “[Hết hàng. ]” bên cạnh tên sản phẩm của chúng tôi nếu sản phẩm hết hàng

    Bởi vì tôi không gói [Hết hàng. ] trong phần tử thẻ HTML, Razor không thể xác định hoàn toàn rằng nội dung trong khối @if là phần bắt đầu của khối nội dung. Chúng tôi đang sử dụng @. chuỗi ký tự để biểu thị rõ ràng rằng dòng này trong khối mã của chúng tôi phải được coi là nội dung

    Sử dụng Code Nuggets trong vòng @. khối nội dung

    Ngoài việc xuất nội dung tĩnh, bạn cũng có thể nhúng các cốm mã trong một khối nội dung được bắt đầu bằng @. dãy ký tự.  

    Ví dụ: chúng tôi có hai @. trình tự trong đoạn mã dưới đây

    Lưu ý làm thế nào trong vòng @ thứ hai. trình tự chúng tôi đang phát ra số lượng đơn vị còn lại trong khối nội dung [e. g. - "[Chỉ có 3 trái. ”]. Chúng tôi đang làm điều này bằng cách nhúng @p. Nugget mã UnitsInStock trong dòng nội dung

    Nhiều dòng nội dung

    Razor makes it easy to have multiple lines of content wrapped in an HTML element.  For example, below the inner content of our @if container is wrapped in an HTML

    element – which will cause Razor to treat it as content:

    Đối với các tình huống trong đó nhiều dòng nội dung không được bao bọc bởi phần tử HTML bên ngoài, bạn có thể sử dụng nhiều @. trình tự

    Alternatively, Razor also allows you to use a element to explicitly identify content:

    The tag is an element that is treated specially by Razor. It causes Razor to interpret the inner contents of the block as content, and to not render the containing tag element [meaning only the inner contents of the element will be rendered – the tag itself will not].  This makes it convenient when you want to render multi-line content blocks that are not wrapped by an HTML element. 

    The element can also optionally be used to denote single-lines of content, if you prefer it to the more concise @: sequence:

    The above code will render the same output as the @: version we looked at earlier.  Razor will automatically omit the wrapping element from the output and just render the content within it. 

    Tóm lược

    Razor enables a clean and concise templating syntax that enables a very fluid coding workflow.  Razor’s smart detection of elements to identify the beginning of content regions is one of the reasons that the Razor approach works so well with HTML generation scenarios, and it enables you to avoid having to explicitly mark the beginning/ending of content regions in about 95% of if/else and foreach scenarios.

    Razor’s @: and syntax can then be used for scenarios where you want to avoid using an HTML element within a code container block, and need to more explicitly denote a content region.

    Hi vọng điêu nay co ich,

    Scott

    P. S. Ngoài việc viết blog, tôi hiện cũng đang sử dụng Twitter để cập nhật nhanh và chia sẻ liên kết. Theo dõi tôi tại. Twitter. com/scottgu

    Làm thế nào để viết mã trong cshtml?

    Quy tắc cú pháp dao cạo chính cho C# .
    Các khối mã dao cạo được đính kèm trong @{. }
    Biểu thức nội tuyến [biến và hàm] bắt đầu bằng @
    Các câu lệnh mã kết thúc bằng dấu chấm phẩy
    Các biến được khai báo với từ khóa var
    Các chuỗi được đặt trong dấu ngoặc kép
    Mã C# phân biệt chữ hoa chữ thường
    Các tệp C# có phần mở rộng. cshtml

    @{} trong Cshtml là gì?

    @{ } dành cho viết mã C# bên trong một. trang dao cạo cshtml . Tất cả mã C# được viết bằng. cshtml chỉ được biên dịch 1 lần cho mỗi yêu cầu, bạn không thể sử dụng nó để tương tác với người dùng ở phía máy khách.

    Cshtml dùng để làm gì?

    tiện ích mở rộng cshtml là tệp HTML C# được công cụ Razor Markup sử dụng ở phía máy chủ để hiển thị tệp trang web cho trình duyệt của người dùng . Mã hóa phía máy chủ này tương tự như ASP tiêu chuẩn. NET cho phép tạo nội dung web động một cách nhanh chóng khi trang web được ghi vào trình duyệt.

    Sự khác biệt giữa HTML và Cshtml là gì?

    cshtml = html + mã máy chủ. html được xử lý nghiêm ngặt bởi ứng dụng khách, thường là trình duyệt. cshtml là phần mở rộng tệp đề cập đến công cụ xem dao cạo . Ngoài html thẳng, các tệp này còn chứa mã C# được biên dịch trên máy chủ trước khi các trang được đưa lên trình duyệt từ máy chủ.

  • Chủ Đề