Вы можете использовать длины значений в каждом ключе и в самом словаре для достижения желаемого результата, используя следующее:
r = {1:['1', '2', '3'], 2:['1', '2', '3'], 3:['1', '2', '3', '4', '5']}
d = {2: 2, 1: 4, 3: 1}
for k,v in d.items():
if k < len(r) and v < len(r[k]):
print(r[k][v])
Я понял его. Проблема заключалась в том, что в проекте все еще были некоторые страницы, которые не были преобразованы в использование «пространства имен» по мере необходимости в проекте веб-приложений. Я думаю, я подумал, что он не скомпировал, если бы все еще были какие-либо из этих страниц, но если страница не будет ссылаться на сама ничего из-за того, что она не казалось, что сквозь. Поэтому, когда говорилось, что он не наследует от «System.Web.ui.wage», который был, потому что он не мог найти класс «BasePage» во время выполнения, потому что сама страница не была в пространстве имен webaplication. Я прошел через все свои страницы один за другим и убедился, что они были правильно добавлены в пространство имен webapplation, и теперь он не только компилирует без проблем, он также отображает нормально. ура!
Какой пробный преобразован с веб-сайта в проект веб-приложения может быть!
Для меня у меня были все пространства имен на страницах, и ни одно из решений выше не исправляло это. Моя проблема была в:
<%@ Page Language="C#"
AutoEventWireup="true"
CodeBehind="xxx.aspx.cs"
Inherits="xxx.xxx.xxx"
MasterPageFile="~masterurl/default.master" %>
Тогда в моем файле aspx.cs
пространство имен не соответствовало тегу Inherits
. Так что нужно
namespace xxx.xxx.xxx
В .cs
, чтобы соответствовать Inherits
.