gpt4 book ai didi

asp.net - 另一个 CS 文件无法访问用户控件

转载 作者:行者123 更新时间:2023-12-04 17:00:50 25 4
gpt4 key购买 nike

有一个UserControlA当我加入一个项目时,它已经开发了。它在一个项目中,我将称之为 MyProjectWeb它的命名空间是 MyProjectWeb.Common .

namespace MyProjectWeb.Common
{
public partial class UserControlA : System.Web.UI.UserControl
{

...

还有另一个 WorkFlowManager 项目包含访问这个 UserControl1 的类文件。
MyProjectWeb.Common.UserControlA myUserControlA = (MyProjectWeb.Common.UserControlA)WizardControl.FindControl("TabContainer5$tpSomething$UserControlID");

注意:WorkFlowManager 和 MyProjectWeb 在同一个解决方案中。

这完全正常。现在我想创建另一个 UserControl,即 UserControlB。

我遵循了完全相同的事情。
namespace MyProjectWeb.Common
{
public partial class UserControlB : System.Web.UI.UserControl
{

但令我惊讶的是,我无法在 WorkFlowManager 的同一个代码文件中创建 UserControlB 的实例。 MyProjectWeb.Common 命名空间甚至不包含 UserControlB。当我编译时,我显然得到了一个 The type or namespace name 'UserControlB' does not exist in the namespace 'MyProjectWeb.Common' (are you missing an assembly reference?)
为什么我可以从 WorkFlowManager cs 文件中引用 UserControlA 而不是 UserControlB,它们在同一命名空间中?如果我访问 MyProjectWeb 内任何位置的 MyProjectWeb.Common 命名空间,我可以看到两个用户控件。哪里可以查找错误?

我正在使用带有 ASP .NET 2.0 的 Visual Studio 2005

最佳答案

这将取决于 WorkFlowManager 项目如何引用 MyProjectWeb dll。如果两个项目在同一个解决方案中,那么它应该是一个项目引用,但您需要验证它。如果引用了 dll 文件,那么您需要查看引用文件的确切存储位置 - 我的猜测是 WorkFlowManager 项目正在引用 MyProjectWeb dll 的私有(private)副本,当您重建 MyProjectWeb 时,该副本显然不会更新。

关于asp.net - 另一个 CS 文件无法访问用户控件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4426762/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com