我正在使用 asp.net 3.5,我的解决方案目前有 2 个项目,一个 API 类项目和一个网站项目,在类项目中我有一个名为 checkin.resx 的资源文件。为了能够从我的网站项目访问资源文件,我必须将“访问修饰符”设置为公共,这允许我使用强类型名称来访问资源,例如:CkiApi.Checkin.Resources.Checkin.OCKI_HeaderText
,其中 Checkin 是 .resx文件和 OCKI_HeaderText 是资源键。
我面临的问题是我无法从前端 aspx 代码访问资源,例如,设置标签的文本属性或验证错误消息。我尝试了以下语法无济于事:
<asp:Label AssociatedControlID="IdentMethods" EnableViewState="false" ID="lblIdentMethod" runat="server" Text="<%$ Resources: CkiApi.Checkin.Resources.Checkin, OCKI_IdentificationMethod %>"></asp:Label>
我得到的错误是
找不到键为“OCKI_IdentificationMethod”的资源对象。
但无论我将类名设置为什么,我都会遇到同样的错误,我认为它是因为它试图查看网站项目,但我不知道如何告诉它查看 API!任何人都可以帮忙吗?
我可以使用以下设置非服务器端标签:
<div id="OckiIntroText">
<%=CkiApi.Checkin.Resources.Checkin.OCKI_IntroText%>
</div>