আমি আমার পুরানো .aspx ভিউগুলি নতুন রেজার ভিউ ইঞ্জিনের সাথে আপডেট করছি। আমার কাছে এমন অনেকগুলি জায়গা রয়েছে যেখানে আমার কোড রয়েছে:
<span class="vote-up<%= puzzle.UserVote == VoteType.Up ? "-selected" : "" %>">Vote Up</span>
আদর্শভাবে আমি এটি করতে চাই:
<span class="vote-up@{puzzle.UserVote == VoteType.Up ? "-selected" : ""}">Vote Up</span>
তবে এখানে দুটি সমস্যা রয়েছে:
vote-up@{puzzle.UserVote.... একটি কোড ব্লকের সূচনা হিসাবে @ প্রতীকটিকে বিবেচনা করছে না@puzzle.UserVote == VoteType.Upপ্রথম অংশটিকে দেখে মনে হচ্ছে@puzzle.UserVoteযেন এটি ভেরিয়েবলের মান রেন্ডার করে।
এই সমস্যাগুলি কীভাবে সমাধান করা যায় কেউ জানেন?
@(isSomething ? "class='test'" : "")জাভাস্ক্রিপ্ট বা ইনজেকশন ইনজেক্ট করা, এটি সেগুলিকে সারণী হিসাবে এনকোড করবে 'এবং পৃষ্ঠাটি ভেঙে দেবে। সুতরাং আপনি অবশ্যই ব্যবহার করা উচিত Html.Raw("..")। অন্যথায় উপরের কোডটি দিয়ে আপনি এমন কিছু দিয়ে শেষ করতে চান <p class='test'>যা অবৈধ।
@(puzzle.UserVote == VoteType.Up ? "-selected" : "")